<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Microsoft.Scripting.Core</name>
    </assembly>
    <members>
        <member name="T:System.Dynamic.CallInfo">
             <summary>
             Describes arguments in the dynamic binding process.
             </summary>
             <remarks>
             ArgumentCount - all inclusive number of arguments.
             ArgumentNames - names for those arguments that are named.
            
             Argument names match to the argument values in left to right order 
             and last name corresponds to the last argument.
             
             Example:
               Foo(arg1, arg2, arg3, name1 = arg4, name2 = arg5, name3 = arg6)
            
               will correspond to:
                ArgumentCount: 6
                ArgumentNames: {"name1", "name2", "name3"}
             </remarks>
        </member>
        <member name="M:System.Dynamic.CallInfo.#ctor(System.Int32,System.String[])">
            <summary>
            Creates a new PositionalArgumentInfo.
            </summary>
            <param name="argCount">The number of arguments.</param>
            <param name="argNames">The argument names.</param>
            <returns>The new CallInfo</returns>
        </member>
        <member name="M:System.Dynamic.CallInfo.#ctor(System.Int32,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new CallInfo that represents arguments in the dynamic binding process.
            </summary>
            <param name="argCount">The number of arguments.</param>
            <param name="argNames">The argument names.</param>
            <returns>The new CallInfo</returns>
        </member>
        <member name="M:System.Dynamic.CallInfo.GetHashCode">
            <summary>
            Serves as a hash function for the current CallInfo.
            </summary>
            <returns>A hash code for the current CallInfo.</returns>
        </member>
        <member name="M:System.Dynamic.CallInfo.Equals(System.Object)">
            <summary>
            Determines whether the specified CallInfo instance is considered equal to the current.
            </summary>
            <param name="obj">The instance of CallInfo to compare with the current instance.</param>
            <returns>true if the specified instance is equal to the current one otherwise, false.</returns>
        </member>
        <member name="P:System.Dynamic.CallInfo.ArgumentCount">
            <summary>
            The number of arguments.
            </summary>
        </member>
        <member name="P:System.Dynamic.CallInfo.ArgumentNames">
            <summary>
            The argument names.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.CallSiteOps">
            <summary>
            This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.CreateMatchmaker``1(System.Runtime.CompilerServices.CallSite{``0})">
            <summary>
            Creates an instance of a dynamic call site used for cache lookup.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <returns>The new call site.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.SetNotMatched(System.Runtime.CompilerServices.CallSite)">
            <summary>
            Checks if a dynamic site requires an update.
            </summary>
            <param name="site">An instance of the dynamic call site.</param>
            <returns>true if rule does not need updating, false otherwise.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.GetMatch(System.Runtime.CompilerServices.CallSite)">
            <summary>
            Checks whether the executed rule matched
            </summary>
            <param name="site">An instance of the dynamic call site.</param>
            <returns>true if rule matched, false otherwise.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.ClearMatch(System.Runtime.CompilerServices.CallSite)">
            <summary>
            Clears the match flag on the matchmaker call site.
            </summary>
            <param name="site">An instance of the dynamic call site.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.AddRule``1(System.Runtime.CompilerServices.CallSite{``0},``0)">
            <summary>
            Adds a rule to the cache maintained on the dynamic call site.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <param name="site">An instance of the dynamic call site.</param>
            <param name="rule">An instance of the call site rule.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.UpdateRules``1(System.Runtime.CompilerServices.CallSite{``0},System.Int32)">
            <summary>
            Updates rules in the cache.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <param name="this">An instance of the dynamic call site.</param>
            <param name="matched">The matched rule index.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.GetRules``1(System.Runtime.CompilerServices.CallSite{``0})">
            <summary>
            Gets the dynamic binding rules from the call site.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <param name="site">An instance of the dynamic call site.</param>
            <returns>An array of dynamic binding rules.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.GetRuleCache``1(System.Runtime.CompilerServices.CallSite{``0})">
            <summary>
            Retrieves binding rule cache.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <param name="site">An instance of the dynamic call site.</param>
            <returns>The cache.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.MoveRule``1(System.Runtime.CompilerServices.RuleCache{``0},``0,System.Int32)">
            <summary>
            Moves the binding rule within the cache.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <param name="cache">The call site rule cache.</param>
            <param name="rule">An instance of the call site rule.</param>
            <param name="i">An index of the call site rule.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.GetCachedRules``1(System.Runtime.CompilerServices.RuleCache{``0})">
            <summary>
            Searches the dynamic rule cache for rules applicable to the dynamic operation.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <param name="cache">The cache.</param>
            <returns>The collection of applicable rules.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteOps.Bind``1(System.Runtime.CompilerServices.CallSiteBinder,System.Runtime.CompilerServices.CallSite{``0},System.Object[])">
            <summary>
            Updates the call site target with a new rule based on the arguments.
            </summary>
            <typeparam name="T">The type of the delegate of the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</typeparam>
            <param name="binder">The call site binder.</param>
            <param name="site">An instance of the dynamic call site.</param>
            <param name="args">Arguments to the call site.</param>
            <returns>The new call site target.</returns>
        </member>
        <member name="T:System.Dynamic.IInvokeOnGetBinder">
            <summary>
            Represents information about a dynamic get member operation, indicating
            if the get member should invoke properties when performing the get.
            </summary>
        </member>
        <member name="P:System.Dynamic.IInvokeOnGetBinder.InvokeOnGet">
            <summary>
            Gets the value indicating if this GetMember should invoke properties
            when performing the get. The default value when this interface is not present
            is true.
            </summary>
            <remarks>
            This property is used by some languages to get a better COM interop experience.
            When the value is set to false, the dynamic COM object won't invoke the object
            but will instead bind to the name, and return an object that can be invoked or
            indexed later. This is useful for indexed properties and languages that don't
            produce InvokeMember call sites.
            </remarks>
        </member>
        <member name="T:System.Dynamic.InvokeMemberBinder">
            <summary>
            Represents the invoke member dynamic operation at the call site,
            providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="T:System.Dynamic.DynamicMetaObjectBinder">
            <summary>
            The dynamic call site binder that participates in the <see cref="T:System.Dynamic.DynamicMetaObject"/> binding protocol.
            </summary>
            <remarks>
            The <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/> performs the binding of the dynamic operation using the runtime values
            as input. On the other hand, the <see cref="T:System.Dynamic.DynamicMetaObjectBinder"/> participates in the <see cref="T:System.Dynamic.DynamicMetaObject"/>
            binding protocol.
            </remarks>
        </member>
        <member name="T:System.Runtime.CompilerServices.CallSiteBinder">
            <summary>
            Class responsible for runtime binding of the dynamic operations on the dynamic call site.
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.CallSiteBinder.Cache">
            <summary>
            The Level 2 cache - all rules produced for the same binder.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteBinder.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/> class.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteBinder.Bind(System.Object[],System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Scripting.Ast.ParameterExpression},Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Performs the runtime binding of the dynamic operation on a set of arguments.
            </summary>
            <param name="args">An array of arguments to the dynamic operation.</param>
            <param name="parameters">The array of <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> instances that represent the parameters of the call site in the binding process.</param>
            <param name="returnLabel">A LabelTarget used to return the result of the dynamic binding.</param>
            <returns>
            An Expression that performs tests on the dynamic operation arguments, and
            performs the dynamic operation if hte tests are valid. If the tests fail on
            subsequent occurrences of the dynamic operation, Bind will be called again
            to produce a new <see cref="T:Microsoft.Scripting.Ast.Expression"/> for the new argument types.
            </returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteBinder.BindDelegate``1(System.Runtime.CompilerServices.CallSite{``0},System.Object[])">
            <summary>
            Provides low-level runtime binding support.  Classes can override this and provide a direct
            delegate for the implementation of rule.  This can enable saving rules to disk, having
            specialized rules available at runtime, or providing a different caching policy.
            </summary>
            <typeparam name="T">The target type of the CallSite.</typeparam>
            <param name="site">The CallSite the bind is being performed for.</param>
            <param name="args">The arguments for the binder.</param>
            <returns>A new delegate which replaces the CallSite Target.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteBinder.CacheTarget``1(``0)">
            <summary>
            Adds a target to the cache of known targets.  The cached targets will
            be scanned before calling BindDelegate to produce the new rule.
            </summary>
            <typeparam name="T">The type of target being added.</typeparam>
            <param name="target">The target delegate to be added to the cache.</param>
        </member>
        <member name="P:System.Runtime.CompilerServices.CallSiteBinder.UpdateLabel">
            <summary>
            Gets a label that can be used to cause the binding to be updated. It
            indicates that the expression's binding is no longer valid.
            This is typically used when the "version" of a dynamic object has
            changed.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObjectBinder.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.DynamicMetaObjectBinder"/> class.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObjectBinder.Bind(System.Object[],System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Scripting.Ast.ParameterExpression},Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Performs the runtime binding of the dynamic operation on a set of arguments.
            </summary>
            <param name="args">An array of arguments to the dynamic operation.</param>
            <param name="parameters">The array of <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> instances that represent the parameters of the call site in the binding process.</param>
            <param name="returnLabel">A LabelTarget used to return the result of the dynamic binding.</param>
            <returns>
            An Expression that performs tests on the dynamic operation arguments, and
            performs the dynamic operation if the tests are valid. If the tests fail on
            subsequent occurrences of the dynamic operation, Bind will be called again
            to produce a new <see cref="T:Microsoft.Scripting.Ast.Expression"/> for the new argument types.
            </returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObjectBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic operation.
            </summary>
            <param name="target">The target of the dynamic operation.</param>
            <param name="args">An array of arguments of the dynamic operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObjectBinder.GetUpdateExpression(System.Type)">
            <summary>
            Gets an expression that will cause the binding to be updated. It
            indicates that the expression's binding is no longer valid.
            This is typically used when the "version" of a dynamic object has
            changed.
            </summary>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type">Type</see> property of the resulting expression; any type is allowed.</param>
            <returns>The update expression.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObjectBinder.Defer(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Defers the binding of the operation until later time when the runtime values of all dynamic operation arguments have been computed.
            </summary>
            <param name="target">The target of the dynamic operation.</param>
            <param name="args">An array of arguments of the dynamic operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObjectBinder.Defer(System.Dynamic.DynamicMetaObject[])">
            <summary>
            Defers the binding of the operation until later time when the runtime values of all dynamic operation arguments have been computed.
            </summary>
            <param name="args">An array of arguments of the dynamic operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.DynamicMetaObjectBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.InvokeMemberBinder.#ctor(System.String,System.Boolean,System.Dynamic.CallInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.InvokeMemberBinder"/>.
            </summary>
            <param name="name">The name of the member to invoke.</param>
            <param name="ignoreCase">true if the name should be matched ignoring case; false otherwise.</param>
            <param name="callInfo">The signature of the arguments at the call site.</param>
        </member>
        <member name="M:System.Dynamic.InvokeMemberBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic invoke member operation.
            </summary>
            <param name="target">The target of the dynamic invoke member operation.</param>
            <param name="args">An array of arguments of the dynamic invoke member operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.InvokeMemberBinder.FallbackInvokeMember(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic invoke member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic invoke member operation.</param>
            <param name="args">The arguments of the dynamic invoke member operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.InvokeMemberBinder.FallbackInvokeMember(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic invoke member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic invoke member operation.</param>
            <param name="args">The arguments of the dynamic invoke member operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.InvokeMemberBinder.FallbackInvoke(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic invoke operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic invoke operation.</param>
            <param name="args">The arguments of the dynamic invoke operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
            <remarks>
            This method is called by the target when the target implements the invoke member operation
            as a sequence of get member, and invoke, to let the <see cref="T:System.Dynamic.DynamicMetaObject"/>
            request the binding of the invoke operation only.
            </remarks>
        </member>
        <member name="P:System.Dynamic.InvokeMemberBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.InvokeMemberBinder.Name">
            <summary>
            Gets the name of the member to invoke.
            </summary>
        </member>
        <member name="P:System.Dynamic.InvokeMemberBinder.IgnoreCase">
            <summary>
            Gets the value indicating if the string comparison should ignore the case of the member name.
            </summary>
        </member>
        <member name="P:System.Dynamic.InvokeMemberBinder.CallInfo">
            <summary>
            Gets the signature of the arguments at the call site.
            </summary>
        </member>
        <member name="T:System.Dynamic.BinaryOperationBinder">
            <summary>
            Represents the binary dynamic operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.BinaryOperationBinder.#ctor(Microsoft.Scripting.Ast.ExpressionType)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.BinaryOperationBinder"/> class.
            </summary>
            <param name="operation">The binary operation kind.</param>
        </member>
        <member name="M:System.Dynamic.BinaryOperationBinder.FallbackBinaryOperation(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the binary dynamic operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic binary operation.</param>
            <param name="arg">The right hand side operand of the dynamic binary operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.BinaryOperationBinder.FallbackBinaryOperation(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the binary dynamic operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic binary operation.</param>
            <param name="arg">The right hand side operand of the dynamic binary operation.</param>
            <param name="errorSuggestion">The binding result in case the binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.BinaryOperationBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic binary operation.
            </summary>
            <param name="target">The target of the dynamic operation.</param>
            <param name="args">An array of arguments of the dynamic operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.BinaryOperationBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.BinaryOperationBinder.Operation">
            <summary>
            The binary operation kind.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.CallSite">
            <summary>
            A Dynamic Call Site base class. This type is used as a parameter type to the
            dynamic site targets. The first parameter of the delegate (T) below must be
            of this type.
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.CallSite._binder">
            <summary>
            The Binder responsible for binding operations at this call site.
            This binder is invoked by the UpdateAndExecute below if all Level 0,
            Level 1 and Level 2 caches experience cache miss.
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.CallSite._match">
            <summary>
            used by Matchmaker sites to indicate rule match.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSite.Create(System.Type,System.Runtime.CompilerServices.CallSiteBinder)">
            <summary>
            Creates a CallSite with the given delegate type and binder.
            </summary>
            <param name="delegateType">The CallSite delegate type.</param>
            <param name="binder">The CallSite binder.</param>
            <returns>The new CallSite.</returns>
        </member>
        <member name="P:System.Runtime.CompilerServices.CallSite.Binder">
            <summary>
            Class responsible for binding dynamic operations on the dynamic site.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.CallSite`1">
            <summary>
            Dynamic site type.
            </summary>
            <typeparam name="T">The delegate type.</typeparam>
        </member>
        <member name="F:System.Runtime.CompilerServices.CallSite`1.Target">
            <summary>
            The Level 0 cache - a delegate specialized based on the site history.
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.CallSite`1.Rules">
            <summary>
            The Level 1 cache - a history of the dynamic site.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSite`1.Create(System.Runtime.CompilerServices.CallSiteBinder)">
            <summary>
            Creates an instance of the dynamic call site, initialized with the binder responsible for the
            runtime binding of the dynamic operations at this call site.
            </summary>
            <param name="binder">The binder responsible for the runtime binding of the dynamic operations at this call site.</param>
            <returns>The new instance of dynamic call site.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSite`1.ClearRuleCache">
            <summary>
            Clears the rule cache ... used by the call site tests.
            </summary>
        </member>
        <member name="P:System.Runtime.CompilerServices.CallSite`1.Update">
            <summary>
            The update delegate. Called when the dynamic site experiences cache miss.
            </summary>
            <returns>The update delegate.</returns>
        </member>
        <member name="T:System.Runtime.CompilerServices.CallSiteHelpers">
            <summary>
            Class that contains helper methods for DLR CallSites.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallSiteHelpers.IsInternalFrame(System.Reflection.MethodBase)">
            <summary>
            Checks if a <see cref="T:System.Reflection.MethodBase"/> is internally used by DLR and should not
            be displayed on the language code's stack.
            </summary>
            <param name="mb">The input <see cref="T:System.Reflection.MethodBase"/></param>
            <returns>
            True if the input <see cref="T:System.Reflection.MethodBase"/> is internally used by DLR and should not
            be displayed on the language code's stack. Otherwise, false.
            </returns>
        </member>
        <member name="T:System.Dynamic.ConvertBinder">
            <summary>
            Represents the convert dynamic operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.ConvertBinder.#ctor(System.Type,System.Boolean)">
            <summary>
            Initializes a new intsance of the <see cref="T:System.Dynamic.ConvertBinder"/>.
            </summary>
            <param name="type">The type to convert to.</param>
            <param name="explicit">true if the conversion should consider explicit conversions; otherwise, false.</param>
        </member>
        <member name="M:System.Dynamic.ConvertBinder.FallbackConvert(System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic convert operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic convert operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.ConvertBinder.FallbackConvert(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic convert operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic convert operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.ConvertBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic convert operation.
            </summary>
            <param name="target">The target of the dynamic convert operation.</param>
            <param name="args">An array of arguments of the dynamic convert operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.ConvertBinder.Type">
            <summary>
            The type to convert to.
            </summary>
        </member>
        <member name="P:System.Dynamic.ConvertBinder.Explicit">
            <summary>
            Gets the value indicating if the conversion should consider explicit conversions.
            </summary>
        </member>
        <member name="P:System.Dynamic.ConvertBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="T:System.Dynamic.DeleteIndexBinder">
            <summary>
            Represents the dynamic delete index operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.DeleteIndexBinder.#ctor(System.Dynamic.CallInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.DeleteIndexBinder"/>.
            </summary>
            <param name="callInfo">The signature of the arguments at the call site.</param>
        </member>
        <member name="M:System.Dynamic.DeleteIndexBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic delete index operation.
            </summary>
            <param name="target">The target of the dynamic delete index operation.</param>
            <param name="args">An array of arguments of the dynamic delete index operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DeleteIndexBinder.FallbackDeleteIndex(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic delete index operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic delete index operation.</param>
            <param name="indexes">The arguments of the dynamic delete index operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DeleteIndexBinder.FallbackDeleteIndex(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic delete index operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic delete index operation.</param>
            <param name="indexes">The arguments of the dynamic delete index operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.DeleteIndexBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.DeleteIndexBinder.CallInfo">
            <summary>
            Gets the signature of the arguments at the call site.
            </summary>
        </member>
        <member name="T:System.Dynamic.DynamicObject">
            <summary>
            Provides a simple class that can be inherited from to create an object with dynamic behavior
            at runtime.  Subclasses can override the various binder methods (GetMember, SetMember, Call, etc...)
            to provide custom behavior that will be invoked at runtime.  
            
            If a method is not overridden then the DynamicObject does not directly support that behavior and 
            the call site will determine how the binding should be performed.
            </summary>
        </member>
        <member name="T:System.Dynamic.IDynamicMetaObjectProvider">
            <summary>
            Represents a dynamic object, that can have its operations bound at runtime.
            </summary>
            <remarks>
            Objects that want to participate in the binding process should implement an IDynamicMetaObjectProvider interface,
            and implement <see cref="M:System.Dynamic.IDynamicMetaObjectProvider.GetMetaObject(Microsoft.Scripting.Ast.Expression)"/> to return a <see cref="T:System.Dynamic.DynamicMetaObject"/>.
            </remarks>
        </member>
        <member name="M:System.Dynamic.IDynamicMetaObjectProvider.GetMetaObject(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Returns the <see cref="T:System.Dynamic.DynamicMetaObject"/> responsible for binding operations performed on this object.
            </summary>
            <param name="parameter">The expression tree representation of the runtime value.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> to bind this object.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.#ctor">
            <summary>
            Enables derived types to create a new instance of DynamicObject.  DynamicObject instances cannot be
            directly instantiated because they have no implementation of dynamic behavior.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryGetMember(System.Dynamic.GetMemberBinder,System.Object@)">
            <summary>
            Provides the implementation of getting a member.  Derived classes can override
            this method to customize behavior.  When not overridden the call site requesting the
            binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="result">The result of the get operation.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TrySetMember(System.Dynamic.SetMemberBinder,System.Object)">
            <summary>
            Provides the implementation of setting a member.  Derived classes can override
            this method to customize behavior.  When not overridden the call site requesting the
            binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="value">The value to set.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryDeleteMember(System.Dynamic.DeleteMemberBinder)">
            <summary>
            Provides the implementation of deleting a member.  Derived classes can override
            this method to customize behavior.  When not overridden the call site requesting the
            binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryInvokeMember(System.Dynamic.InvokeMemberBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation of calling a member.  Derived classes can override
            this method to customize behavior.  When not overridden the call site requesting the
            binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="args">The arguments to be used for the invocation.</param>
            <param name="result">The result of the invocation.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryConvert(System.Dynamic.ConvertBinder,System.Object@)">
            <summary>
            Provides the implementation of converting the DynamicObject to another type.  Derived classes
            can override this method to customize behavior.  When not overridden the call site
            requesting the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="result">The result of the conversion.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryCreateInstance(System.Dynamic.CreateInstanceBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation of creating an instance of the DynamicObject.  Derived classes
            can override this method to customize behavior.  When not overridden the call site requesting
            the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="args">The arguments used for creation.</param>
            <param name="result">The created instance.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryInvoke(System.Dynamic.InvokeBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation of invoking the DynamicObject.  Derived classes can
            override this method to customize behavior.  When not overridden the call site requesting
            the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="args">The arguments to be used for the invocation.</param>
            <param name="result">The result of the invocation.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryBinaryOperation(System.Dynamic.BinaryOperationBinder,System.Object,System.Object@)">
            <summary>
            Provides the implementation of performing a binary operation.  Derived classes can
            override this method to customize behavior.  When not overridden the call site requesting
            the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="arg">The right operand for the operation.</param>
            <param name="result">The result of the operation.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryUnaryOperation(System.Dynamic.UnaryOperationBinder,System.Object@)">
            <summary>
            Provides the implementation of performing a unary operation.  Derived classes can
            override this method to customize behavior.  When not overridden the call site requesting
            the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="result">The result of the operation.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryGetIndex(System.Dynamic.GetIndexBinder,System.Object[],System.Object@)">
            <summary>
            Provides the implementation of performing a get index operation.  Derived classes can
            override this method to customize behavior.  When not overridden the call site requesting
            the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="indexes">The indexes to be used.</param>
            <param name="result">The result of the operation.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TrySetIndex(System.Dynamic.SetIndexBinder,System.Object[],System.Object)">
            <summary>
            Provides the implementation of performing a set index operation.  Derived classes can
            override this method to custmize behavior.  When not overridden the call site requesting
            the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="indexes">The indexes to be used.</param>
            <param name="value">The value to set.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.TryDeleteIndex(System.Dynamic.DeleteIndexBinder,System.Object[])">
            <summary>
            Provides the implementation of performing a delete index operation.  Derived classes
            can override this method to custmize behavior.  When not overridden the call site
            requesting the binder determines the behavior.
            </summary>
            <param name="binder">The binder provided by the call site.</param>
            <param name="indexes">The indexes to be deleted.</param>
            <returns>true if the operation is complete, false if the call site should determine behavior.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.GetDynamicMemberNames">
            <summary>
            Returns the enumeration of all dynamic member names.
            </summary>
            <returns>The list of dynamic member names.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicObject.GetMetaObject(Microsoft.Scripting.Ast.Expression)">
            <summary>
            The provided MetaObject will dispatch to the Dynamic virtual methods.
            The object can be encapsulated inside of another MetaObject to
            provide custom behavior for individual actions.
            </summary>
        </member>
        <member name="T:System.Dynamic.DynamicMetaObject">
            <summary>
            Represents the dynamic binding and a binding logic of an object participating in the dynamic binding.
            </summary>
        </member>
        <member name="F:System.Dynamic.DynamicMetaObject.EmptyMetaObjects">
            <summary>
            Represents an empty array of type <see cref="T:System.Dynamic.DynamicMetaObject"/>. This field is read only.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.#ctor(Microsoft.Scripting.Ast.Expression,System.Dynamic.BindingRestrictions)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.DynamicMetaObject"/> class.
            </summary>
            <param name="expression">The expression representing this <see cref="T:System.Dynamic.DynamicMetaObject"/> during the dynamic binding process.</param>
            <param name="restrictions">The set of binding restrictions under which the binding is valid.</param>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.#ctor(Microsoft.Scripting.Ast.Expression,System.Dynamic.BindingRestrictions,System.Object)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.DynamicMetaObject"/> class.
            </summary>
            <param name="expression">The expression representing this <see cref="T:System.Dynamic.DynamicMetaObject"/> during the dynamic binding process.</param>
            <param name="restrictions">The set of binding restrictions under which the binding is valid.</param>
            <param name="value">The runtime value represented by the <see cref="T:System.Dynamic.DynamicMetaObject"/>.</param>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindConvert(System.Dynamic.ConvertBinder)">
            <summary>
            Performs the binding of the dynamic conversion operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.ConvertBinder"/> that represents the details of the dynamic operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindGetMember(System.Dynamic.GetMemberBinder)">
            <summary>
            Performs the binding of the dynamic get member operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetMemberBinder"/> that represents the details of the dynamic operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindSetMember(System.Dynamic.SetMemberBinder,System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic set member operation. 
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.SetMemberBinder"/> that represents the details of the dynamic operation.</param>
            <param name="value">The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the value for the set member operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindDeleteMember(System.Dynamic.DeleteMemberBinder)">
            <summary>
            Performs the binding of the dynamic delete member operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.DeleteMemberBinder"/> that represents the details of the dynamic operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindGetIndex(System.Dynamic.GetIndexBinder,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic get index operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.GetIndexBinder"/> that represents the details of the dynamic operation.</param>
            <param name="indexes">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - indexes for the get index operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindSetIndex(System.Dynamic.SetIndexBinder,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic set index operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.SetIndexBinder"/> that represents the details of the dynamic operation.</param>
            <param name="indexes">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - indexes for the set index operation.</param>
            <param name="value">The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the value for the set index operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindDeleteIndex(System.Dynamic.DeleteIndexBinder,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic delete index operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.DeleteIndexBinder"/> that represents the details of the dynamic operation.</param>
            <param name="indexes">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - indexes for the delete index operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindInvokeMember(System.Dynamic.InvokeMemberBinder,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic invoke member operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.InvokeMemberBinder"/> that represents the details of the dynamic operation.</param>
            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke member operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindInvoke(System.Dynamic.InvokeBinder,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic invoke operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.InvokeBinder"/> that represents the details of the dynamic operation.</param>
            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the invoke operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindCreateInstance(System.Dynamic.CreateInstanceBinder,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic create instance operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.CreateInstanceBinder"/> that represents the details of the dynamic operation.</param>
            <param name="args">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances - arguments to the create instance operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindUnaryOperation(System.Dynamic.UnaryOperationBinder)">
            <summary>
            Performs the binding of the dynamic unary operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.UnaryOperationBinder"/> that represents the details of the dynamic operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.BindBinaryOperation(System.Dynamic.BinaryOperationBinder,System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic binary operation.
            </summary>
            <param name="binder">An instance of the <see cref="T:System.Dynamic.BinaryOperationBinder"/> that represents the details of the dynamic operation.</param>
            <param name="arg">An instance of the <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the right hand side of the binary operation.</param>
            <returns>The new <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.GetDynamicMemberNames">
            <summary>
            Returns the enumeration of all dynamic member names.
            </summary>
            <returns>The list of dynamic member names.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.GetExpressions(System.Dynamic.DynamicMetaObject[])">
            <summary>
            Returns the list of expressions represented by the <see cref="T:System.Dynamic.DynamicMetaObject"/> instances.
            </summary>
            <param name="objects">An array of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances to extract expressions from.</param>
            <returns>The array of expressions.</returns>
        </member>
        <member name="M:System.Dynamic.DynamicMetaObject.Create(System.Object,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a meta-object for the specified object. 
            </summary>
            <param name="value">The object to get a meta-object for.</param>
            <param name="expression">The expression representing this <see cref="T:System.Dynamic.DynamicMetaObject"/> during the dynamic binding process.</param>
            <returns>
            If the given object implements <see cref="T:System.Dynamic.IDynamicMetaObjectProvider"/> and is not a remote object from outside the current AppDomain,
            returns the object's specific meta-object returned by <see cref="M:System.Dynamic.IDynamicMetaObjectProvider.GetMetaObject(Microsoft.Scripting.Ast.Expression)"/>. Otherwise a plain new meta-object 
            with no restrictions is created and returned.
            </returns>
        </member>
        <member name="P:System.Dynamic.DynamicMetaObject.Expression">
            <summary>
            The expression representing the <see cref="T:System.Dynamic.DynamicMetaObject"/> during the dynamic binding process.
            </summary>
        </member>
        <member name="P:System.Dynamic.DynamicMetaObject.Restrictions">
            <summary>
            The set of binding restrictions under which the binding is valid.
            </summary>
        </member>
        <member name="P:System.Dynamic.DynamicMetaObject.Value">
            <summary>
            The runtime value represented by this <see cref="T:System.Dynamic.DynamicMetaObject"/>.
            </summary>
        </member>
        <member name="P:System.Dynamic.DynamicMetaObject.HasValue">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Dynamic.DynamicMetaObject"/> has the runtime value.
            </summary>
        </member>
        <member name="P:System.Dynamic.DynamicMetaObject.RuntimeType">
            <summary>
            Gets the <see cref="T:System.Type"/> of the runtime value or null if the <see cref="T:System.Dynamic.DynamicMetaObject"/> has no value associated with it.
            </summary>
        </member>
        <member name="P:System.Dynamic.DynamicMetaObject.LimitType">
            <summary>
            Gets the limit type of the <see cref="T:System.Dynamic.DynamicMetaObject"/>.
            </summary>
            <remarks>Represents the most specific type known about the object represented by the <see cref="T:System.Dynamic.DynamicMetaObject"/>. <see cref="P:System.Dynamic.DynamicMetaObject.RuntimeType"/> if runtime value is available, a type of the <see cref="P:System.Dynamic.DynamicMetaObject.Expression"/> otherwise.</remarks>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.ReferenceArgAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Helper method for generating expressions that assign byRef call
            parameters back to their original variables
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.BuildCallArgs(System.Dynamic.DynamicMetaObjectBinder,Microsoft.Scripting.Ast.Expression[],Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Helper method for generating arguments for calling methods
            on DynamicObject.  parameters is either a list of ParameterExpressions
            to be passed to the method as an object[], or NoArgs to signify that
            the target method takes no object[] parameter.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.CallMethodWithResult(System.String,System.Dynamic.DynamicMetaObjectBinder,Microsoft.Scripting.Ast.Expression[],System.Dynamic.DynamicObject.MetaDynamic.Fallback)">
            <summary>
            Helper method for generating a MetaObject which calls a
            specific method on Dynamic that returns a result
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.CallMethodWithResult(System.String,System.Dynamic.DynamicMetaObjectBinder,Microsoft.Scripting.Ast.Expression[],System.Dynamic.DynamicObject.MetaDynamic.Fallback,System.Dynamic.DynamicObject.MetaDynamic.Fallback)">
            <summary>
            Helper method for generating a MetaObject which calls a
            specific method on Dynamic that returns a result
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.BuildCallMethodWithResult(System.String,System.Dynamic.DynamicMetaObjectBinder,Microsoft.Scripting.Ast.Expression[],System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicObject.MetaDynamic.Fallback)">
            <summary>
            Helper method for generating a MetaObject which calls a
            specific method on DynamicObject that returns a result.
            
            args is either an array of arguments to be passed
            to the method as an object[] or NoArgs to signify that
            the target method takes no parameters.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.CallMethodReturnLast(System.String,System.Dynamic.DynamicMetaObjectBinder,Microsoft.Scripting.Ast.Expression[],Microsoft.Scripting.Ast.Expression,System.Dynamic.DynamicObject.MetaDynamic.Fallback)">
            <summary>
            Helper method for generating a MetaObject which calls a
            specific method on Dynamic, but uses one of the arguments for
            the result.
            
            args is either an array of arguments to be passed
            to the method as an object[] or NoArgs to signify that
            the target method takes no parameters.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.CallMethodNoResult(System.String,System.Dynamic.DynamicMetaObjectBinder,Microsoft.Scripting.Ast.Expression[],System.Dynamic.DynamicObject.MetaDynamic.Fallback)">
            <summary>
            Helper method for generating a MetaObject which calls a
            specific method on Dynamic, but uses one of the arguments for
            the result.
            
            args is either an array of arguments to be passed
            to the method as an object[] or NoArgs to signify that
            the target method takes no parameters.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.IsOverridden(System.String)">
            <summary>
            Checks if the derived type has overridden the specified method.  If there is no
            implementation for the method provided then Dynamic falls back to the base class
            behavior which lets the call site determine how the binder is performed.
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.GetRestrictions">
            <summary>
            Returns a Restrictions object which includes our current restrictions merged
            with a restriction limiting our type
            </summary>
        </member>
        <member name="M:System.Dynamic.DynamicObject.MetaDynamic.GetLimitedSelf">
            <summary>
            Returns our Expression converted to DynamicObject
            </summary>
        </member>
        <member name="T:System.Dynamic.GetMemberBinder">
            <summary>
            Represents the dynamic get member operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.GetMemberBinder.#ctor(System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.GetMemberBinder"/>.
            </summary>
            <param name="name">The name of the member to get.</param>
            <param name="ignoreCase">true if the name should be matched ignoring case; false otherwise.</param>
        </member>
        <member name="M:System.Dynamic.GetMemberBinder.FallbackGetMember(System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic get member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic get member operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.GetMemberBinder.FallbackGetMember(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic get member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic get member operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.GetMemberBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic get member operation.
            </summary>
            <param name="target">The target of the dynamic get member operation.</param>
            <param name="args">An array of arguments of the dynamic get member operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.GetMemberBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.GetMemberBinder.Name">
            <summary>
            Gets the name of the member to get.
            </summary>
        </member>
        <member name="P:System.Dynamic.GetMemberBinder.IgnoreCase">
            <summary>
            Gets the value indicating if the string comparison should ignore the case of the member name.
            </summary>
        </member>
        <member name="T:System.Dynamic.ExpandoObject">
            <summary>
            Represents an object with members that can be dynamically added and removed at runtime.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.#ctor">
            <summary>
            Creates a new ExpandoObject with no members.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.TryGetValue(System.Object,System.Int32,System.String,System.Boolean,System.Object@)">
            <summary>
            Try to get the data stored for the specified class at the specified index.  If the
            class has changed a full lookup for the slot will be performed and the correct
            value will be retrieved.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.TrySetValue(System.Object,System.Int32,System.Object,System.String,System.Boolean,System.Boolean)">
            <summary>
            Sets the data for the specified class at the specified index.  If the class has
            changed then a full look for the slot will be performed.  If the new class does
            not have the provided slot then the Expando's class will change. Only case sensitive
            setter is supported in ExpandoObject.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.TryDeleteValue(System.Object,System.Int32,System.String,System.Boolean,System.Object)">
            <summary>
            Deletes the data stored for the specified class at the specified index.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.IsDeletedMember(System.Int32)">
            <summary>
            Returns true if the member at the specified index has been deleted,
            otherwise false. Call this function holding the lock.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.PromoteClassCore(System.Dynamic.ExpandoClass,System.Dynamic.ExpandoClass)">
            <summary>
            Promotes the class from the old type to the new type and returns the new
            ExpandoData object.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.PromoteClass(System.Object,System.Object)">
            <summary>
            Internal helper to promote a class.  Called from our RuntimeOps helper.  This
            version simply doesn't expose the ExpandoData object which is a private
            data structure.
            </summary>
        </member>
        <member name="P:System.Dynamic.ExpandoObject.Class">
            <summary>
            Exposes the ExpandoClass which we've associated with this 
            Expando object.  Used for type checks in rules.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.MetaExpando.AddDynamicTestAndDefer(System.Dynamic.DynamicMetaObjectBinder,System.Dynamic.ExpandoClass,System.Dynamic.ExpandoClass,System.Dynamic.DynamicMetaObject)">
            <summary>
            Adds a dynamic test which checks if the version has changed.  The test is only necessary for
            performance as the methods will do the correct thing if called with an incorrect version.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.MetaExpando.GetClassEnsureIndex(System.String,System.Boolean,System.Dynamic.ExpandoObject,System.Dynamic.ExpandoClass@,System.Int32@)">
            <summary>
            Gets the class and the index associated with the given name.  Does not update the expando object.  Instead
            this returns both the original and desired new class.  A rule is created which includes the test for the
            original class, the promotion to the new class, and the set/delete based on the class post-promotion.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.MetaExpando.GetLimitedSelf">
            <summary>
            Returns our Expression converted to our known LimitType
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.MetaExpando.GetRestrictions">
            <summary>
            Returns a Restrictions object which includes our current restrictions merged
            with a restriction limiting our type
            </summary>
        </member>
        <member name="T:System.Dynamic.ExpandoObject.ExpandoData">
            <summary>
            Stores the class and the data associated with the class as one atomic
            pair.  This enables us to do a class check in a thread safe manner w/o
            requiring locks.
            </summary>
        </member>
        <member name="F:System.Dynamic.ExpandoObject.ExpandoData.Class">
            <summary>
            the dynamically assigned class associated with the Expando object
            </summary>
        </member>
        <member name="F:System.Dynamic.ExpandoObject.ExpandoData._dataArray">
            <summary>
            data stored in the expando object, key names are stored in the class.
            
            Expando._data must be locked when mutating the value.  Otherwise a copy of it 
            could be made and lose values.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.ExpandoData.#ctor">
            <summary>
            Constructs an empty ExpandoData object with the empty class and no data.
            </summary>
        </member>
        <member name="F:System.Dynamic.ExpandoObject.ExpandoData._version">
            <summary>
            the version of the ExpandoObject that tracks set and delete operations
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.ExpandoData.#ctor(System.Dynamic.ExpandoClass,System.Object[],System.Int32)">
            <summary>
            Constructs a new ExpandoData object with the specified class and data.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoObject.ExpandoData.UpdateClass(System.Dynamic.ExpandoClass)">
            <summary>
            Update the associated class and increases the storage for the data array if needed.
            </summary>
            <returns></returns>
        </member>
        <member name="P:System.Dynamic.ExpandoObject.ExpandoData.Item(System.Int32)">
            <summary>
            Indexer for getting/setting the data
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.RuntimeOps">
            <summary>
            This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.
            Contains helper methods called from dynamically generated methods.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.ExpandoTryGetValue(System.Dynamic.ExpandoObject,System.Object,System.Int32,System.String,System.Boolean,System.Object@)">
            <summary>
            Gets the value of an item in an expando object.
            </summary>
            <param name="expando">The expando object.</param>
            <param name="indexClass">The class of the expando object.</param>
            <param name="index">The index of the member.</param>
            <param name="name">The name of the member.</param>
            <param name="ignoreCase">true if the name should be matched ignoring case; false otherwise.</param>
            <param name="value">The out parameter containing the value of the member.</param>
            <returns>True if the member exists in the expando object, otherwise false.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.ExpandoTrySetValue(System.Dynamic.ExpandoObject,System.Object,System.Int32,System.Object,System.String,System.Boolean)">
            <summary>
            Sets the value of an item in an expando object.
            </summary>
            <param name="expando">The expando object.</param>
            <param name="indexClass">The class of the expando object.</param>
            <param name="index">The index of the member.</param>
            <param name="value">The value of the member.</param>
            <param name="name">The name of the member.</param>
            <param name="ignoreCase">true if the name should be matched ignoring case; false otherwise.</param>
            <returns>
            Returns the index for the set member.
            </returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.ExpandoTryDeleteValue(System.Dynamic.ExpandoObject,System.Object,System.Int32,System.String,System.Boolean)">
            <summary>
            Deletes the value of an item in an expando object.
            </summary>
            <param name="expando">The expando object.</param>
            <param name="indexClass">The class of the expando object.</param>
            <param name="index">The index of the member.</param>
            <param name="name">The name of the member.</param>
            <param name="ignoreCase">true if the name should be matched ignoring case; false otherwise.</param>
            <returns>true if the item was successfully removed; otherwise, false.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.ExpandoCheckVersion(System.Dynamic.ExpandoObject,System.Object)">
            <summary>
            Checks the version of the expando object.
            </summary>
            <param name="expando">The expando object.</param>
            <param name="version">The version to check.</param>
            <returns>true if the version is equal; otherwise, false.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.ExpandoPromoteClass(System.Dynamic.ExpandoObject,System.Object,System.Object)">
            <summary>
            Promotes an expando object from one class to a new class.
            </summary>
            <param name="expando">The expando object.</param>
            <param name="oldClass">The old class of the expando object.</param>
            <param name="newClass">The new class of the expando object.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.CreateRuntimeVariables(System.Object[],System.Int64[])">
            <summary>
            Creates an interface that can be used to modify closed over variables at runtime.
            </summary>
            <param name="data">The closure array.</param>
            <param name="indexes">An array of indicies into the closure array where variables are found.</param>
            <returns>An interface to access variables.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.CreateRuntimeVariables">
            <summary>
            Creates an interface that can be used to modify closed over variables at runtime.
            </summary>
            <returns>An interface to access variables.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.Quote(Microsoft.Scripting.Ast.Expression,System.Object,System.Object[])">
            <summary>
            Quotes the provided expression tree.
            </summary>
            <param name="expression">The expression to quote.</param>
            <param name="hoistedLocals">The hoisted local state provided by the compiler.</param>
            <param name="locals">The actual hoisted local values.</param>
            <returns>The quoted expression.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.RuntimeOps.MergeRuntimeVariables(System.Runtime.CompilerServices.IRuntimeVariables,System.Runtime.CompilerServices.IRuntimeVariables,System.Int32[])">
            <summary>
            Combines two runtime variable lists and returns a new list.
            </summary>
            <param name="first">The first list.</param>
            <param name="second">The second list.</param>
            <param name="indexes">The index array indicating which list to get variables from.</param>
            <returns>The merged runtime variables.</returns>
        </member>
        <member name="T:System.Runtime.CompilerServices.IRuntimeVariables">
            <summary>
            An interface to represent values of runtime variables.
            </summary>
        </member>
        <member name="P:System.Runtime.CompilerServices.IRuntimeVariables.Count">
            <summary>
            Count of the variables.
            </summary>
        </member>
        <member name="P:System.Runtime.CompilerServices.IRuntimeVariables.Item(System.Int32)">
            <summary>
            An indexer to get/set the values of the runtime variables.
            </summary>
            <param name="index">An index of the runtime variable.</param>
            <returns>The value of the runtime variable.</returns>
        </member>
        <member name="T:System.Runtime.CompilerServices.RuntimeOps.RuntimeVariableList">
            <summary>
            Provides a list of variables, supporing read/write of the values
            Exposed via RuntimeVariablesExpression
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ExpressionVisitor">
            <summary>
            Represents a visitor or rewriter for expression trees.
            </summary>
            <remarks>
            This class is designed to be inherited to create more specialized
            classes whose functionality requires traversing, examining or copying
            an expression tree.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.#ctor">
            <summary>
            Initializes a new instance of <see cref="T:Microsoft.Scripting.Ast.ExpressionVisitor"/>.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.Visit(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Dispatches the expression to one of the more specialized visit methods in this class.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.Visit(System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Dispatches the list of expressions to one of the more specialized visit methods in this class.
            </summary>
            <param name="nodes">The expressions to visit.</param>
            <returns>The modified expression list, if any of the elements were modified;
            otherwise, returns the original expression list.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.Visit``1(System.Collections.ObjectModel.ReadOnlyCollection{``0},System.Func{``0,``0})">
            <summary>
            Visits all nodes in the collection using a specified element visitor.
            </summary>
            <typeparam name="T">The type of the nodes.</typeparam>
            <param name="nodes">The nodes to visit.</param>
            <param name="elementVisitor">A delegate that visits a single element,
            optionally replacing it with a new element.</param>
            <returns>The modified node list, if any of the elements were modified;
            otherwise, returns the original node list.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitAndConvert``1(``0,System.String)">
            <summary>
            Visits an expression, casting the result back to the original expression type.
            </summary>
            <typeparam name="T">The type of the expression.</typeparam>
            <param name="node">The expression to visit.</param>
            <param name="callerName">The name of the calling method; used to report to report a better error message.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
            <exception cref="T:System.InvalidOperationException">The visit method for this node returned a different type.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitAndConvert``1(System.Collections.ObjectModel.ReadOnlyCollection{``0},System.String)">
            <summary>
            Visits an expression, casting the result back to the original expression type.
            </summary>
            <typeparam name="T">The type of the expression.</typeparam>
            <param name="nodes">The expression to visit.</param>
            <param name="callerName">The name of the calling method; used to report to report a better error message.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
            <exception cref="T:System.InvalidOperationException">The visit method for this node returned a different type.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitBinary(Microsoft.Scripting.Ast.BinaryExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitBlock(Microsoft.Scripting.Ast.BlockExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitConditional(Microsoft.Scripting.Ast.ConditionalExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitConstant(Microsoft.Scripting.Ast.ConstantExpression)">
            <summary>
            Visits the <see cref="T:Microsoft.Scripting.Ast.ConstantExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitDebugInfo(Microsoft.Scripting.Ast.DebugInfoExpression)">
            <summary>
            Visits the <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitDynamic(Microsoft.Scripting.Ast.DynamicExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitDefault(Microsoft.Scripting.Ast.DefaultExpression)">
            <summary>
            Visits the <see cref="T:Microsoft.Scripting.Ast.DefaultExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitExtension(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Visits the children of the extension expression.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
            <remarks>
            This can be overridden to visit or rewrite specific extension nodes.
            If it is not overridden, this method will call <see cref="M:Microsoft.Scripting.Ast.Expression.VisitChildren(Microsoft.Scripting.Ast.ExpressionVisitor)"/>,
            which gives the node a chance to walk its children. By default,
            <see cref="M:Microsoft.Scripting.Ast.Expression.VisitChildren(Microsoft.Scripting.Ast.ExpressionVisitor)"/> will try to reduce the node.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitGoto(Microsoft.Scripting.Ast.GotoExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitInvocation(Microsoft.Scripting.Ast.InvocationExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.InvocationExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitLabelTarget(Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Visits the <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitLabel(Microsoft.Scripting.Ast.LabelExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitLambda``1(Microsoft.Scripting.Ast.Expression{``0})">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.Expression`1"/>.
            </summary>
            <typeparam name="T">The type of the delegate.</typeparam>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitLoop(Microsoft.Scripting.Ast.LoopExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.LoopExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMember(Microsoft.Scripting.Ast.MemberExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitIndex(Microsoft.Scripting.Ast.IndexExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMethodCall(Microsoft.Scripting.Ast.MethodCallExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitNewArray(Microsoft.Scripting.Ast.NewArrayExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.NewArrayExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitNew(Microsoft.Scripting.Ast.NewExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.NewExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitParameter(Microsoft.Scripting.Ast.ParameterExpression)">
            <summary>
            Visits the <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitRuntimeVariables(Microsoft.Scripting.Ast.RuntimeVariablesExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.RuntimeVariablesExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitSwitchCase(Microsoft.Scripting.Ast.SwitchCase)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.SwitchCase"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitSwitch(Microsoft.Scripting.Ast.SwitchExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitCatchBlock(Microsoft.Scripting.Ast.CatchBlock)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitTry(Microsoft.Scripting.Ast.TryExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.TryExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitTypeBinary(Microsoft.Scripting.Ast.TypeBinaryExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.TypeBinaryExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitUnary(Microsoft.Scripting.Ast.UnaryExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMemberInit(Microsoft.Scripting.Ast.MemberInitExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.MemberInitExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitListInit(Microsoft.Scripting.Ast.ListInitExpression)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitElementInit(Microsoft.Scripting.Ast.ElementInit)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.ElementInit"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMemberBinding(Microsoft.Scripting.Ast.MemberBinding)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMemberAssignment(Microsoft.Scripting.Ast.MemberAssignment)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.MemberAssignment"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMemberMemberBinding(Microsoft.Scripting.Ast.MemberMemberBinding)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMemberListBinding(Microsoft.Scripting.Ast.MemberListBinding)">
            <summary>
            Visits the children of the <see cref="T:Microsoft.Scripting.Ast.MemberListBinding"/>.
            </summary>
            <param name="node">The expression to visit.</param>
            <returns>The modified expression, if it or any subexpression was modified;
            otherwise, returns the original expression.</returns>
        </member>
        <member name="T:System.Runtime.CompilerServices.RuntimeOps.MergedRuntimeVariables">
            <summary>
            Provides a list of variables, supporing read/write of the values
            Exposed via RuntimeVariablesExpression
            </summary>
        </member>
        <member name="T:System.Dynamic.ExpandoClass">
            <summary>
            Represents a dynamically assigned class.  Expando objects which share the same 
            members will share the same class.  Classes are dynamically assigned as the
            expando object gains members.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoClass.#ctor">
            <summary>
            Constructs the empty ExpandoClass.  This is the class used when an
            empty Expando object is initially constructed.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoClass.#ctor(System.String[],System.Int32)">
            <summary>
            Constructs a new ExpandoClass that can hold onto the specified keys.  The
            keys must be sorted ordinally.  The hash code must be precalculated for 
            the keys.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoClass.FindNewClass(System.String)">
            <summary>
            Finds or creates a new ExpandoClass given the existing set of keys
            in this ExpandoClass plus the new key to be added. Members in an
            ExpandoClass are always stored case sensitively.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoClass.GetTransitionList(System.Int32)">
            <summary>
            Gets the lists of transitions that are valid from this ExpandoClass
            to an ExpandoClass whos keys hash to the apporopriate hash code.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoClass.GetValueIndex(System.String,System.Boolean,System.Dynamic.ExpandoObject)">
            <summary>
            Gets the index at which the value should be stored for the specified name.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoClass.GetValueIndexCaseSensitive(System.String)">
            <summary>
            Gets the index at which the value should be stored for the specified name
            case sensitively. Returns the index even if the member is marked as deleted.
            </summary>
        </member>
        <member name="M:System.Dynamic.ExpandoClass.GetValueIndexCaseInsensitive(System.String,System.Dynamic.ExpandoObject)">
            <summary>
            Gets the index at which the value should be stored for the specified name,
            the method is only used in the case-insensitive case.
            </summary>
            <param name="name">the name of the member</param>
            <param name="obj">The ExpandoObject associated with the class
            that is used to check if a member has been deleted.</param>
            <returns>
            the exact match if there is one
            if there is exactly one member with case insensitive match, return it
            otherwise we throw AmbiguousMatchException.
            </returns>
        </member>
        <member name="P:System.Dynamic.ExpandoClass.Keys">
            <summary>
            Gets the names of the keys that can be stored in the Expando class.  The
            list is sorted ordinally.
            </summary>
        </member>
        <member name="T:System.Dynamic.GetIndexBinder">
            <summary>
            Represents the dynamic get index operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.GetIndexBinder.#ctor(System.Dynamic.CallInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.GetIndexBinder"/>.
            </summary>
            <param name="callInfo">The signature of the arguments at the call site.</param>
        </member>
        <member name="M:System.Dynamic.GetIndexBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic get index operation.
            </summary>
            <param name="target">The target of the dynamic get index operation.</param>
            <param name="args">An array of arguments of the dynamic get index operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.GetIndexBinder.FallbackGetIndex(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic get index operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic get index operation.</param>
            <param name="indexes">The arguments of the dynamic get index operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.GetIndexBinder.FallbackGetIndex(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic get index operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic get index operation.</param>
            <param name="indexes">The arguments of the dynamic get index operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.GetIndexBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.GetIndexBinder.CallInfo">
            <summary>
            Gets the signature of the arguments at the call site.
            </summary>
        </member>
        <member name="T:System.Dynamic.CreateInstanceBinder">
            <summary>
            Represents the create dynamic operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.CreateInstanceBinder.#ctor(System.Dynamic.CallInfo)">
            <summary>
            Initializes a new intsance of the <see cref="T:System.Dynamic.CreateInstanceBinder"/>.
            </summary>
            <param name="callInfo">The signature of the arguments at the call site.</param>
        </member>
        <member name="M:System.Dynamic.CreateInstanceBinder.FallbackCreateInstance(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic create operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic create operation.</param>
            <param name="args">The arguments of the dynamic create operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.CreateInstanceBinder.FallbackCreateInstance(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic create operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic create operation.</param>
            <param name="args">The arguments of the dynamic create operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.CreateInstanceBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic create operation.
            </summary>
            <param name="target">The target of the dynamic create operation.</param>
            <param name="args">An array of arguments of the dynamic create operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.CreateInstanceBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.CreateInstanceBinder.CallInfo">
            <summary>
            Gets the signature of the arguments at the call site.
            </summary>
        </member>
        <member name="T:System.Dynamic.DeleteMemberBinder">
            <summary>
            Represents the dynamic delete member operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.DeleteMemberBinder.#ctor(System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.DeleteIndexBinder"/>.
            </summary>
            <param name="name">The name of the member to delete.</param>
            <param name="ignoreCase">true if the name should be matched ignoring case; false otherwise.</param>
        </member>
        <member name="M:System.Dynamic.DeleteMemberBinder.FallbackDeleteMember(System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic delete member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic delete member operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DeleteMemberBinder.FallbackDeleteMember(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic delete member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic delete member operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.DeleteMemberBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic delete member operation.
            </summary>
            <param name="target">The target of the dynamic delete member operation.</param>
            <param name="args">An array of arguments of the dynamic delete member operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.DeleteMemberBinder.Name">
            <summary>
            Gets the name of the member to delete.
            </summary>
        </member>
        <member name="P:System.Dynamic.DeleteMemberBinder.IgnoreCase">
            <summary>
            Gets the value indicating if the string comparison should ignore the case of the member name.
            </summary>
        </member>
        <member name="P:System.Dynamic.DeleteMemberBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="T:System.Dynamic.InvokeBinder">
            <summary>
            Represents the invoke dynamic operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.InvokeBinder.#ctor(System.Dynamic.CallInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.InvokeBinder"/>.
            </summary>
            <param name="callInfo">The signature of the arguments at the call site.</param>
        </member>
        <member name="M:System.Dynamic.InvokeBinder.FallbackInvoke(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic invoke operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic invoke operation.</param>
            <param name="args">The arguments of the dynamic invoke operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.InvokeBinder.FallbackInvoke(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic invoke operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic invoke operation.</param>
            <param name="args">The arguments of the dynamic invoke operation.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.InvokeBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic invoke operation.
            </summary>
            <param name="target">The target of the dynamic invoke operation.</param>
            <param name="args">An array of arguments of the dynamic invoke operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.InvokeBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.InvokeBinder.CallInfo">
            <summary>
            Gets the signature of the arguments at the call site.
            </summary>
        </member>
        <member name="T:System.Dynamic.BindingRestrictions">
            <summary>
            Represents a set of binding restrictions on the <see cref="T:System.Dynamic.DynamicMetaObject"/>under which the dynamic binding is valid.
            </summary>
        </member>
        <member name="F:System.Dynamic.BindingRestrictions.Empty">
            <summary>
            Represents an empty set of binding restrictions. This field is read only.
            </summary>
        </member>
        <member name="M:System.Dynamic.BindingRestrictions.Merge(System.Dynamic.BindingRestrictions)">
            <summary>
            Merges the set of binding restrictions with the current binding restrictions.
            </summary>
            <param name="restrictions">The set of restrictions with which to merge the current binding restrictions.</param>
            <returns>The new set of binding restrictions.</returns>
        </member>
        <member name="M:System.Dynamic.BindingRestrictions.GetTypeRestriction(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates the binding restriction that check the expression for runtime type identity.
            </summary>
            <param name="expression">The expression to test.</param>
            <param name="type">The exact type to test.</param>
            <returns>The new binding restrictions.</returns>
        </member>
        <member name="M:System.Dynamic.BindingRestrictions.GetTypeRestriction(System.Dynamic.DynamicMetaObject)">
            <summary>
            The method takes a DynamicMetaObject, and returns an instance restriction for testing null if the object
            holds a null value, otherwise returns a type restriction.
            </summary>
        </member>
        <member name="M:System.Dynamic.BindingRestrictions.GetInstanceRestriction(Microsoft.Scripting.Ast.Expression,System.Object)">
            <summary>
            Creates the binding restriction that checks the expression for object instance identity.
            </summary>
            <param name="expression">The expression to test.</param>
            <param name="instance">The exact object instance to test.</param>
            <returns>The new binding restrictions.</returns>
        </member>
        <member name="M:System.Dynamic.BindingRestrictions.GetExpressionRestriction(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates the binding restriction that checks the expression for arbitrary immutable properties.
            </summary>
            <param name="expression">The expression expression the restrictions.</param>
            <returns>The new binding restrictions.</returns>
            <remarks>
            By convention, the general restrictions created by this method must only test
            immutable object properties.
            </remarks>
        </member>
        <member name="M:System.Dynamic.BindingRestrictions.Combine(System.Collections.Generic.IList{System.Dynamic.DynamicMetaObject})">
            <summary>
            Combines binding restrictions from the list of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances into one set of restrictions.
            </summary>
            <param name="contributingObjects">The list of <see cref="T:System.Dynamic.DynamicMetaObject"/> instances from which to combine restrictions.</param>
            <returns>The new set of binding restrictions.</returns>
        </member>
        <member name="M:System.Dynamic.BindingRestrictions.ToExpression">
            <summary>
            Creates the <see cref="T:Microsoft.Scripting.Ast.Expression"/> representing the binding restrictions.
            </summary>
            <returns>The expression tree representing the restrictions.</returns>
        </member>
        <member name="T:System.Dynamic.BindingRestrictions.TestBuilder">
            <summary>
            Builds a balanced tree of AndAlso nodes.
            We do this so the compiler won't stack overflow if we have many
            restrictions.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.RuleCache`1">
            <summary>
            This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.
            Represents a cache of runtime binding rules.
            </summary>
            <typeparam name="T">The delegate type.</typeparam>
        </member>
        <member name="T:System.Dynamic.SetIndexBinder">
            <summary>
            Represents the dynamic set index operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.SetIndexBinder.#ctor(System.Dynamic.CallInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.SetIndexBinder"/>.
            </summary>
            <param name="callInfo">The signature of the arguments at the call site.</param>
        </member>
        <member name="M:System.Dynamic.SetIndexBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic set index operation.
            </summary>
            <param name="target">The target of the dynamic set index operation.</param>
            <param name="args">An array of arguments of the dynamic set index operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.SetIndexBinder.FallbackSetIndex(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic set index operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic set index operation.</param>
            <param name="indexes">The arguments of the dynamic set index operation.</param>
            <param name="value">The value to set to the collection.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.SetIndexBinder.FallbackSetIndex(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[],System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            When overridden in the derived class, performs the binding of the dynamic set index operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic set index operation.</param>
            <param name="indexes">The arguments of the dynamic set index operation.</param>
            <param name="value">The value to set to the collection.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.SetIndexBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.SetIndexBinder.CallInfo">
            <summary>
            Gets the signature of the arguments at the call site.
            </summary>
        </member>
        <member name="T:System.Dynamic.SetMemberBinder">
            <summary>
            Represents the dynamic set member operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.SetMemberBinder.#ctor(System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.SetMemberBinder"/>.
            </summary>
            <param name="name">The name of the member to get.</param>
            <param name="ignoreCase">true if the name should be matched ignoring case; false otherwise.</param>
        </member>
        <member name="M:System.Dynamic.SetMemberBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic set member operation.
            </summary>
            <param name="target">The target of the dynamic set member operation.</param>
            <param name="args">An array of arguments of the dynamic set member operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.SetMemberBinder.FallbackSetMember(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic set member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic set member operation.</param>
            <param name="value">The value to set to the member.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.SetMemberBinder.FallbackSetMember(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the dynamic set member operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic set member operation.</param>
            <param name="value">The value to set to the member.</param>
            <param name="errorSuggestion">The binding result to use if binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.SetMemberBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.SetMemberBinder.Name">
            <summary>
            Gets the name of the member to get.
            </summary>
        </member>
        <member name="P:System.Dynamic.SetMemberBinder.IgnoreCase">
            <summary>
            Gets the value indicating if the string comparison should ignore the case of the member name.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Expression">
            <summary>
            The base type for all nodes in Expression Trees.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.DebugInfo(Microsoft.Scripting.Ast.SymbolDocumentInfo,System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/> with the specified span.
            </summary>
            <param name="document">The <see cref="T:Microsoft.Scripting.Ast.SymbolDocumentInfo"/> that represents the source file.</param>
            <param name="startLine">The start line of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>. Must be greater than 0.</param>
            <param name="startColumn">The start column of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>. Must be greater than 0.</param>
            <param name="endLine">The end line of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>. Must be greater or equal than the start line.</param>
            <param name="endColumn">The end column of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>. If the end line is the same as the start line, it must be greater or equal than the start column. In any case, must be greater than 0.</param>
            <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ClearDebugInfo(Microsoft.Scripting.Ast.SymbolDocumentInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/> for clearing a sequence point.
            </summary>
            <param name="document">The <see cref="T:Microsoft.Scripting.Ast.SymbolDocumentInfo"/> that represents the source file.</param>
            <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/> for clearning a sequence point.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SymbolDocument(System.String)">
            <summary>
            Creates an instance of <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" />.
            </summary>
            <param name="fileName">A <see cref="T:System.String" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> equal to.</param>
            <returns>A <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" /> that has the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SymbolDocument(System.String,System.Guid)">
            <summary>
            Creates an instance of <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" />.
            </summary>
            <param name="fileName">A <see cref="T:System.String" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> equal to.</param>
            <param name="language">A <see cref="T:System.Guid" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.Language" /> equal to.</param>
            <returns>A <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" /> that has the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> 
            and <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.Language" /> properties set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SymbolDocument(System.String,System.Guid,System.Guid)">
            <summary>
            Creates an instance of <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" />.
            </summary>
            <param name="fileName">A <see cref="T:System.String" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> equal to.</param>
            <param name="language">A <see cref="T:System.Guid" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.Language" /> equal to.</param>
            <param name="languageVendor">A <see cref="T:System.Guid" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor" /> equal to.</param>
            <returns>A <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" /> that has the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> 
            and <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.Language" /> 
            and <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor" /> properties set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SymbolDocument(System.String,System.Guid,System.Guid,System.Guid)">
            <summary>
            Creates an instance of <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" />.
            </summary>
            <param name="fileName">A <see cref="T:System.String" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> equal to.</param>
            <param name="language">A <see cref="T:System.Guid" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.Language" /> equal to.</param>
            <param name="languageVendor">A <see cref="T:System.Guid" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor" /> equal to.</param>
            <param name="documentType">A <see cref="T:System.Guid" /> to set the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.DocumentType" /> equal to.</param>
            <returns>A <see cref="T:System.Linq.Expressions.SymbolDocumentInfo" /> that has the <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.FileName" /> 
            and <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.Language" /> 
            and <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.LanguageVendor" /> 
            and <see cref="P:System.Linq.Expressions.SymbolDocumentInfo.DocumentType" /> properties set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Break(Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a break statement.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Break, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, and a null value to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Break(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a break statement. The value passed to the label upon jumping can be specified.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="value">The value that will be passed to the associated label upon jumping.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Break, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            and <paramref name="value"/> to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Break(Microsoft.Scripting.Ast.LabelTarget,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a break statement with the specified type.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Break, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            and the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Break(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a break statement with the specified type. 
            The value passed to the label upon jumping can be specified.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="value">The value that will be passed to the associated label upon jumping.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Break, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>,
            and <paramref name="value"/> to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Continue(Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a continue statement.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Continue, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            and a null value to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Continue(Microsoft.Scripting.Ast.LabelTarget,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a continue statement with the specified type.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Continue, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>,
            and a null value to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Return(Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a return statement.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Return, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            and a null value to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Return(Microsoft.Scripting.Ast.LabelTarget,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a return statement with the specified type.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Return, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>,
            and a null value to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Return(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a return statement. The value passed to the label upon jumping can be specified.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="value">The value that will be passed to the associated label upon jumping.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Continue, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            and <paramref name="value"/> to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Return(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a return statement with the specified type. 
            The value passed to the label upon jumping can be specified.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="value">The value that will be passed to the associated label upon jumping.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Continue, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>,
            and <paramref name="value"/> to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Goto(Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a goto.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Goto, 
            the <see cref="P:GotoExpression.Target"/> property set to the specified value, 
            and a null value to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Goto(Microsoft.Scripting.Ast.LabelTarget,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a goto with the specified type.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Goto, 
            the <see cref="P:GotoExpression.Target"/> property set to the specified value, 
            the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>,
            and a null value to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Goto(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a goto. The value passed to the label upon jumping can be specified.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="value">The value that will be passed to the associated label upon jumping.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Goto, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            and <paramref name="value"/> to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Goto(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a goto with the specified type.
            The value passed to the label upon jumping can be specified.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="value">The value that will be passed to the associated label upon jumping.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to Goto, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>,
            and <paramref name="value"/> to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeGoto(Microsoft.Scripting.Ast.GotoExpressionKind,Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> representing a jump of the specified <see cref="T:Microsoft.Scripting.Ast.GotoExpressionKind"/>.
            The value passed to the label upon jumping can also be specified.
            </summary>
            <param name="kind">The <see cref="T:Microsoft.Scripting.Ast.GotoExpressionKind"/> of the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/>.</param>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that the <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> will jump to.</param>
            <param name="value">The value that will be passed to the associated label upon jumping.</param>
            <param name="type">An <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> with <see cref="P:GotoExpression.Kind"/> equal to <paramref name="kind"/>, 
            the <see cref="P:GotoExpression.Target"/> property set to <paramref name="target"/>, 
            the <see cref="P:Expression.Type"/> property set to <paramref name="type"/>,
            and <paramref name="value"/> to be passed to the target label upon jumping.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeDynamic(System.Type,System.Runtime.CompilerServices.CallSiteBinder,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="delegateType">The type of the delegate used by the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</param>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="arguments">The arguments to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see>,
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see>, and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeDynamic(System.Type,System.Runtime.CompilerServices.CallSiteBinder,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="delegateType">The type of the delegate used by the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</param>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="arguments">The arguments to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see>,
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see>, and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeDynamic(System.Type,System.Runtime.CompilerServices.CallSiteBinder,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/> and one argument.
            </summary>
            <param name="delegateType">The type of the delegate used by the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</param>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="arg0">The argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see>,
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see>, and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeDynamic(System.Type,System.Runtime.CompilerServices.CallSiteBinder,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/> and two arguments.
            </summary>
            <param name="delegateType">The type of the delegate used by the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</param>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="arg0">The first argument to the dynamic operation.</param>
            <param name="arg1">The second argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see>,
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see>, and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeDynamic(System.Type,System.Runtime.CompilerServices.CallSiteBinder,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/> and three arguments.
            </summary>
            <param name="delegateType">The type of the delegate used by the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</param>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="arg0">The first argument to the dynamic operation.</param>
            <param name="arg1">The second argument to the dynamic operation.</param>
            <param name="arg2">The third argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see>,
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see>, and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeDynamic(System.Type,System.Runtime.CompilerServices.CallSiteBinder,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/> and four arguments.
            </summary>
            <param name="delegateType">The type of the delegate used by the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.</param>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="arg0">The first argument to the dynamic operation.</param>
            <param name="arg1">The second argument to the dynamic operation.</param>
            <param name="arg2">The third argument to the dynamic operation.</param>
            <param name="arg3">The fourth argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see>,
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see>, and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Dynamic(System.Runtime.CompilerServices.CallSiteBinder,System.Type,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="returnType">The result type of the dynamic expression.</param>
            <param name="arguments">The arguments to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see> and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
            <remarks>
            The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see> property of the
            result will be inferred from the types of the arguments and the specified return type.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Dynamic(System.Runtime.CompilerServices.CallSiteBinder,System.Type,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="returnType">The result type of the dynamic expression.</param>
            <param name="arg0">The first argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see> and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
            <remarks>
            The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see> property of the
            result will be inferred from the types of the arguments and the specified return type.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Dynamic(System.Runtime.CompilerServices.CallSiteBinder,System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="returnType">The result type of the dynamic expression.</param>
            <param name="arg0">The first argument to the dynamic operation.</param>
            <param name="arg1">The second argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see> and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
            <remarks>
            The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see> property of the
            result will be inferred from the types of the arguments and the specified return type.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Dynamic(System.Runtime.CompilerServices.CallSiteBinder,System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="returnType">The result type of the dynamic expression.</param>
            <param name="arg0">The first argument to the dynamic operation.</param>
            <param name="arg1">The second argument to the dynamic operation.</param>
            <param name="arg2">The third argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see> and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
            <remarks>
            The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see> property of the
            result will be inferred from the types of the arguments and the specified return type.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Dynamic(System.Runtime.CompilerServices.CallSiteBinder,System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="returnType">The result type of the dynamic expression.</param>
            <param name="arg0">The first argument to the dynamic operation.</param>
            <param name="arg1">The second argument to the dynamic operation.</param>
            <param name="arg2">The third argument to the dynamic operation.</param>
            <param name="arg3">The fourth argument to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see> and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
            <remarks>
            The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see> property of the
            result will be inferred from the types of the arguments and the specified return type.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Dynamic(System.Runtime.CompilerServices.CallSiteBinder,System.Type,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that represents a dynamic operation bound by the provided <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>.
            </summary>
            <param name="binder">The runtime binder for the dynamic operation.</param>
            <param name="returnType">The result type of the dynamic expression.</param>
            <param name="arguments">The arguments to the dynamic operation.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DynamicExpression"/> that has <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> equal to
            <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">Dynamic</see> and has the
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">Binder</see> and
            <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">Arguments</see> set to the specified values.
            </returns>
            <remarks>
            The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">DelegateType</see> property of the
            result will be inferred from the types of the arguments and the specified return type.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Assign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see ref="F:ExpressionType.Assign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeBinary(Microsoft.Scripting.Ast.ExpressionType,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a BinaryExpression, given the left and right operands, by calling an appropriate factory method.
            </summary>
            <param name="binaryType">The ExpressionType that specifies the type of binary operation.</param>
            <param name="left">An Expression that represents the left operand.</param>
            <param name="right">An Expression that represents the right operand.</param>
            <returns>The BinaryExpression that results from calling the appropriate factory method.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeBinary(Microsoft.Scripting.Ast.ExpressionType,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo)">
            <summary>
            Creates a BinaryExpression, given the left and right operands, by calling an appropriate factory method.
            </summary>
            <param name="binaryType">The ExpressionType that specifies the type of binary operation.</param>
            <param name="left">An Expression that represents the left operand.</param>
            <param name="right">An Expression that represents the right operand.</param>
            <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
            <param name="method">A MethodInfo that specifies the implementing method.</param>
            <returns>The BinaryExpression that results from calling the appropriate factory method.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeBinary(Microsoft.Scripting.Ast.ExpressionType,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            
             <summary>
             Creates a BinaryExpression, given the left and right operands, by calling an appropriate factory method.
             </summary>
             <param name="binaryType">The ExpressionType that specifies the type of binary operation.</param>
             <param name="left">An Expression that represents the left operand.</param>
             <param name="right">An Expression that represents the right operand.</param>
             <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
             <param name="method">A MethodInfo that specifies the implementing method.</param>
             <param name="conversion">A LambdaExpression that represents a type conversion function. This parameter is used if binaryType is Coalesce or compound assignment.</param>
             <returns>The BinaryExpression that results from calling the appropriate factory method.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Equal(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an equality comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Equal"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Equal(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an equality comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Equal"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.IsLiftedToNull"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ReferenceEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a reference equality comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Equal"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NotEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an inequality comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.NotEqual"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NotEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an inequality comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.NotEqual"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.IsLiftedToNull"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ReferenceNotEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a reference inequality comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.NotEqual"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GreaterThan(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "greater than" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.GreaterThan"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GreaterThan(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "greater than" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.GreaterThan"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.IsLiftedToNull"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LessThan(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "less than" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LessThan"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LessThan(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "less than" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LessThan"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.IsLiftedToNull"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GreaterThanOrEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "greater than or equal" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.GreaterThanOrEqual"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GreaterThanOrEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "greater than or equal" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.GreaterThanOrEqual"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.IsLiftedToNull"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LessThanOrEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "less than or equal" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LessThanOrEqual"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LessThanOrEqual(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a "less than or equal" numeric comparison.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="liftToNull">true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LessThanOrEqual"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.IsLiftedToNull"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AndAlso(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a conditional AND operation that evaluates the second operand only if it has to.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AndAlso"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AndAlso(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a conditional AND operation that evaluates the second operand only if it has to.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AndAlso"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.OrElse(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a conditional OR operation that evaluates the second operand only if it has to.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.OrElse"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.OrElse(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a conditional OR operation that evaluates the second operand only if it has to.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.OrElse"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Coalesce(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a BinaryExpression that represents a coalescing operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A BinaryExpression that has the NodeType property equal to Coalesce and the Left and Right properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Coalesce(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a BinaryExpression that represents a coalescing operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="conversion">A LambdaExpression to set the Conversion property equal to.</param>
            <returns>A BinaryExpression that has the NodeType property equal to Coalesce and the Left, Right and Conversion properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Add(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic addition operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Add"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Add(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic addition operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Add"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an addition assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AddAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an addition assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AddAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an addition assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AddAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an addition assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.AddAssignChecked"/> and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> 
            properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an addition assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AddAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an addition assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AddAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic addition operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AddChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AddChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic addition operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AddChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Subtract(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic subtraction operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Subtract"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Subtract(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic subtraction operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Subtract"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a subtraction assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a subtraction assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a subtraction assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a subtraction assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a subtraction assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a subtraction assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic subtraction operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SubtractChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic subtraction operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.SubtractChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Divide(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic division operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Divide"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Divide(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic division operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Divide"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.DivideAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a division assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.DivideAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.DivideAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a division assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.DivideAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.DivideAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a division assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.DivideAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Modulo(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic remainder operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Modulo"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Modulo(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic remainder operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Modulo"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ModuloAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a remainder assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ModuloAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ModuloAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a remainder assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ModuloAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ModuloAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a remainder assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ModuloAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Multiply(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic multiplication operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Multiply"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Multiply(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic multiplication operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Multiply"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a multiplication assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a multiplication assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a multiplication assignment operation that does not have overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a multiplication assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a multiplication assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyAssignChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a multiplication assignment operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyAssignChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic multiplication operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MultiplyChecked(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an arithmetic multiplication operation that has overflow checking.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.MultiplyChecked"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LeftShift(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise left-shift operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LeftShift"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LeftShift(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise left-shift operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LeftShift"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LeftShiftAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise left-shift assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LeftShiftAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LeftShiftAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise left-shift assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LeftShiftAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.LeftShiftAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise left-shift assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.LeftShiftAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.RightShift(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise right-shift operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.RightShift"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.RightShift(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise right-shift operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.RightShift"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.RightShiftAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise right-shift assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.RightShiftAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.RightShiftAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise right-shift assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.RightShiftAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.RightShiftAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise right-shift assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.RightShiftAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.And(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise AND operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.And"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.And(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise AND operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.And"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AndAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise AND assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AndAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AndAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise AND assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AndAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.AndAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise AND assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.AndAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Or(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise OR operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Or"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Or(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents an bitwise OR operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Or"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.OrAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise OR assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.OrAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.OrAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise OR assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.OrAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.OrAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise OR assignment operation.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.OrAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ExclusiveOr(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise or logical XOR operation, using op_ExclusiveOr for user-defined types.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ExclusiveOr"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ExclusiveOr(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise or logical XOR operation, using op_ExclusiveOr for user-defined types.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ExclusiveOr"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ExclusiveOrAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise or logical XOR assignment operation, using op_ExclusiveOr for user-defined types.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ExclusiveOrAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ExclusiveOrAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise or logical XOR assignment operation, using op_ExclusiveOr for user-defined types.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ExclusiveOrAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ExclusiveOrAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents a bitwise or logical XOR assignment operation, using op_ExclusiveOr for user-defined types.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.ExclusiveOrAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Power(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents raising a number to a power.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Power"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Power(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents raising a number to a power.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.Power"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PowerAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents raising an expression to a power and assigning the result back to the expression.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.PowerAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/> and <see cref="P:BinaryExpression.Right"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PowerAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents raising an expression to a power and assigning the result back to the expression.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.PowerAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, and <see cref="P:BinaryExpression.Method"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PowerAssign(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that represents raising an expression to a power and assigning the result back to the expression.
            </summary>
            <param name="left">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Left"/> property equal to.</param>
            <param name="right">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:BinaryExpression.Right"/> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:BinaryExpression.Method"/> property equal to.</param>
            <param name="conversion">A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> to set the <see cref="P:BinaryExpression.Conversion"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.BinaryExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to <see cref="F:ExpressionType.PowerAssign"/> 
            and the <see cref="P:BinaryExpression.Left"/>, <see cref="P:BinaryExpression.Right"/>, <see cref="P:BinaryExpression.Method"/>,
            and <see cref="P:BinaryExpression.Conversion"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ArrayIndex(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a BinaryExpression that represents applying an array index operator to an array of rank one.
            </summary>
            <param name="array">An Expression to set the Left property equal to.</param>
            <param name="index">An Expression to set the Right property equal to.</param>
            <returns>A BinaryExpression that has the NodeType property equal to ArrayIndex and the Left and Right properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains two expressions and has no variables.
            </summary>
            <param name="arg0">The first expression in the block.</param>
            <param name="arg1">The second expression in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains three expressions and has no variables.
            </summary>
            <param name="arg0">The first expression in the block.</param>
            <param name="arg1">The second expression in the block.</param>
            <param name="arg2">The third expression in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains four expressions and has no variables.
            </summary>
            <param name="arg0">The first expression in the block.</param>
            <param name="arg1">The second expression in the block.</param>
            <param name="arg2">The third expression in the block.</param>
            <param name="arg3">The fourth expression in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains five expressions and has no variables.
            </summary>
            <param name="arg0">The first expression in the block.</param>
            <param name="arg1">The second expression in the block.</param>
            <param name="arg2">The third expression in the block.</param>
            <param name="arg3">The fourth expression in the block.</param>
            <param name="arg4">The fifth expression in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given expressions and has no variables.
            </summary>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given expressions and has no variables.
            </summary>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(System.Type,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given expressions, has no variables and has specific result type.
            </summary>
            <param name="type">The result type of the block.</param>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(System.Type,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given expressions, has no variables and has specific result type.
            </summary>
            <param name="type">The result type of the block.</param>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression},Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given variables and expressions.
            </summary>
            <param name="variables">The variables in the block.</param>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(System.Type,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression},Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given variables and expressions.
            </summary>
            <param name="type">The result type of the block.</param>
            <param name="variables">The variables in the block.</param>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression},System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given variables and expressions.
            </summary>
            <param name="variables">The variables in the block.</param>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Block(System.Type,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression},System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/> that contains the given variables and expressions.
            </summary>
            <param name="type">The result type of the block.</param>
            <param name="variables">The variables in the block.</param>
            <param name="expressions">The expressions in the block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.BlockExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Catch(System.Type,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> representing a catch statement. 
            The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> of object to be caught can be specified but no reference to the object 
            will be available for use in the <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>.
            </summary>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> of <see cref="T:System.Exception"/> this <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> will handle.</param>
            <param name="body">The body of the catch statement.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Catch(Microsoft.Scripting.Ast.ParameterExpression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> representing a catch statement with a reference to the caught object for use in the handler body.
            </summary>
            <param name="variable">A <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> representing a reference to the <see cref="T:System.Exception"/> object caught by this handler.</param>
            <param name="body">The body of the catch statement.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Catch(System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> representing a catch statement with 
            an <see cref="T:System.Exception"/> filter but no reference to the caught <see cref="T:System.Exception"/> object.
            </summary>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> of <see cref="T:System.Exception"/> this <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> will handle.</param>
            <param name="body">The body of the catch statement.</param>
            <param name="filter">The body of the <see cref="T:System.Exception"/> filter.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Catch(Microsoft.Scripting.Ast.ParameterExpression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> representing a catch statement with 
            an <see cref="T:System.Exception"/> filter and a reference to the caught <see cref="T:System.Exception"/> object.
            </summary>
            <param name="variable">A <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> representing a reference to the <see cref="T:System.Exception"/> object caught by this handler.</param>
            <param name="body">The body of the catch statement.</param>
            <param name="filter">The body of the <see cref="T:System.Exception"/> filter.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeCatchBlock(System.Type,Microsoft.Scripting.Ast.ParameterExpression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> representing a catch statement with the specified elements.
            </summary>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> of <see cref="T:System.Exception"/> this <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/> will handle.</param>
            <param name="variable">A <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> representing a reference to the <see cref="T:System.Exception"/> object caught by this handler.</param>
            <param name="body">The body of the catch statement.</param>
            <param name="filter">The body of the <see cref="T:System.Exception"/> filter.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>.</returns>
            <remarks><paramref name="type"/> must be non-null and match the type of <paramref name="variable"/> (if it is supplied).</remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Condition(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/>.
            </summary>
            <param name="test">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.Test"/> property equal to.</param>
            <param name="ifTrue">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.IfTrue"/> property equal to.</param>
            <param name="ifFalse">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.IfFalse"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Conditional"/> and the <see cref="P:ConditionalExpression.Test"/>, <see cref="P:ConditionalExpression.IfTrue"/>, 
            and <see cref="P:ConditionalExpression.IfFalse"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Condition(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/>.
            </summary>
            <param name="test">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.Test"/> property equal to.</param>
            <param name="ifTrue">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.IfTrue"/> property equal to.</param>
            <param name="ifFalse">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.IfFalse"/> property equal to.</param>
            <param name="type">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Conditional"/> and the <see cref="P:ConditionalExpression.Test"/>, <see cref="P:ConditionalExpression.IfTrue"/>, 
            and <see cref="P:ConditionalExpression.IfFalse"/> properties set to the specified values.</returns>
            <remarks>This method allows explicitly unifying the result type of the conditional expression in cases where the types of <paramref name="ifTrue"/>
            and <paramref name="ifFalse"/> expressions are not equal. Types of both <paramref name="ifTrue"/> and <paramref name="ifFalse"/> must be implicitly
            reference assignable to the result type. The <paramref name="type"/> is allowed to be <see cref="T:System.Void"/>.</remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.IfThen(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/>.
            </summary>
            <param name="test">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.Test"/> property equal to.</param>
            <param name="ifTrue">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.IfTrue"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Conditional"/> and the <see cref="P:ConditionalExpression.Test"/>, <see cref="P:ConditionalExpression.IfTrue"/>, 
            properties set to the specified values. The <see cref="P:ConditionalExpression.IfFalse"/> property is set to default expression and
            the type of the resulting <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/> returned by this method is <see cref="T:System.Void"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.IfThenElse(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/>.
            </summary>
            <param name="test">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.Test"/> property equal to.</param>
            <param name="ifTrue">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.IfTrue"/> property equal to.</param>
            <param name="ifFalse">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:ConditionalExpression.IfFalse"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Conditional"/> and the <see cref="P:ConditionalExpression.Test"/>, <see cref="P:ConditionalExpression.IfTrue"/>, 
            and <see cref="P:ConditionalExpression.IfFalse"/> properties set to the specified values. The type of the resulting <see cref="T:Microsoft.Scripting.Ast.ConditionalExpression"/>
            returned by this method is <see cref="T:System.Void"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Constant(System.Object)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ConstantExpression"/> that has the <see cref="P:ConstantExpression.Value"/> property set to the specified value. .
            </summary>
            <param name="value">An <see cref="T:System.Object"/> to set the <see cref="P:ConstantExpression.Value"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.ConstantExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Constant"/> and the <see cref="P:Expression.Value"/> property set to the specified value.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Constant(System.Object,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ConstantExpression"/> that has the <see cref="P:ConstantExpression.Value"/> 
            and <see cref="P:ConstantExpression.Type"/> properties set to the specified values. .
            </summary>
            <param name="value">An <see cref="T:System.Object"/> to set the <see cref="P:ConstantExpression.Value"/> property equal to.</param>
            <param name="type">A <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.ConstantExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Constant"/> and the <see cref="P:ConstantExpression.Value"/> and 
            <see cref="P:Expression.Type"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Empty">
            <summary>
            Creates an empty expression that has <see cref="T:System.Void"/> type.
            </summary>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DefaultExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Default"/> and the <see cref="P:Expression.Type"/> property set to <see cref="T:System.Void"/>.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Default(System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.DefaultExpression"/> that has the <see cref="P:Expression.Type"/> property set to the specified type.
            </summary>
            <param name="type">A <see cref="T:System.Type"/> to set the <see cref="P:Expression.Type"/> property equal to.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.DefaultExpression"/> that has the <see cref="P:Expression.NodeType"/> property equal to 
            <see cref="F:ExpressionType.Default"/> and the <see cref="P:Expression.Type"/> property set to the specified type.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ElementInit(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates an <see cref="T:ElementInit">ElementInit</see> expression that represents the initialization of a list.
            </summary>
            <param name="addMethod">The <see cref="T:System.Reflection.MethodInfo"/> for the list's Add method.</param>
            <param name="arguments">An array containing the Expressions to be used to initialize the list.</param>
            <returns>The created <see cref="T:ElementInit">ElementInit</see> expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ElementInit(System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates an <see cref="T:ElementInit">ElementInit</see> expression that represents the initialization of a list.
            </summary>
            <param name="addMethod">The <see cref="T:System.Reflection.MethodInfo"/> for the list's Add method.</param>
            <param name="arguments">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing <see cref="T:Microsoft.Scripting.Ast.Expression"/> elements to initialize the list.</param>
            <returns>The created <see cref="T:ElementInit">ElementInit</see> expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.#ctor">
            <summary>
            Constructs a new instance of <see cref="T:Microsoft.Scripting.Ast.Expression"/>.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Reduce">
            <summary>
            Reduces this node to a simpler expression. If CanReduce returns
            true, this should return a valid expression. This method is
            allowed to return another node which itself must be reduced.
            </summary>
            <returns>The reduced expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.VisitChildren(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Reduces the node and then calls the visitor delegate on the reduced expression.
            Throws an exception if the node isn't reducible.
            </summary>
            <param name="visitor">An instance of <see cref="T:System.Func`2"/>.</param>
            <returns>The expression being visited, or an expression which should replace it in the tree.</returns>
            <remarks>
            Override this method to provide logic to walk the node's children. 
            A typical implementation will call visitor.Visit on each of its
            children, and if any of them change, should return a new copy of
            itself with the modified children.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type. For
            example, <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/> will call into
            <see cref="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitMethodCall(Microsoft.Scripting.Ast.MethodCallExpression)"/>.
            </summary>
            <param name="visitor">The visitor to visit this node with.</param>
            <returns>The result of visiting this node.</returns>
            <remarks>
            This default implementation for <see cref="F:Microsoft.Scripting.Ast.ExpressionType.Extension"/>
            nodes will call <see cref="M:Microsoft.Scripting.Ast.ExpressionVisitor.VisitExtension(Microsoft.Scripting.Ast.Expression)"/>.
            Override this method to call into a more specific method on a derived
            visitor class of ExprressionVisitor. However, it should still
            support unknown visitors by calling VisitExtension.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ReduceAndCheck">
            <summary>
            Reduces this node to a simpler expression. If CanReduce returns
            true, this should return a valid expression. This method is
            allowed to return another node which itself must be reduced.
            </summary>
            <returns>The reduced expression.</returns>
            <remarks >
            Unlike Reduce, this method checks that the reduced node satisfies
            certain invariants.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ReduceExtensions">
            <summary>
            Reduces the expression to a known node type (i.e. not an Extension node)
            or simply returns the expression if it is already a known type.
            </summary>
            <returns>The reduced expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ToString">
            <summary>
            Creates a <see cref="T:System.String"/> representation of the Expression.
            </summary>
            <returns>A <see cref="T:System.String"/> representation of the Expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.DumpExpression(System.IO.TextWriter)">
            <summary>
            Writes a <see cref="T:System.String"/> representation of the <see cref="T:Microsoft.Scripting.Ast.Expression"/> to a <see cref="T:System.IO.TextWriter"/>.
            </summary>
            <param name="writer">A <see cref="T:System.IO.TextWriter"/> that will be used to build the string representation.</param>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ReturnReadOnly``1(System.Collections.Generic.IList{``0}@)">
            <summary>
            Helper used for ensuring we only return 1 instance of a ReadOnlyCollection of T.
            
            This is called from various methods where we internally hold onto an IList of T
            or a readonly collection of T.  We check to see if we've already returned a 
            readonly collection of T and if so simply return the other one.  Otherwise we do 
            a thread-safe replacement of the list w/ a readonly collection which wraps it.
            
            Ultimately this saves us from having to allocate a ReadOnlyCollection for our
            data types because the compiler is capable of going directly to the IList of T.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ReturnReadOnly(Microsoft.Scripting.Ast.IArgumentProvider,System.Object@)">
            <summary>
            Helper used for ensuring we only return 1 instance of a ReadOnlyCollection of T.
            
            This is similar to the ReturnReadOnly of T. This version supports nodes which hold 
            onto multiple Expressions where one is typed to object.  That object field holds either
            an expression or a ReadOnlyCollection of Expressions.  When it holds a ReadOnlyCollection
            the IList which backs it is a ListArgumentProvider which uses the Expression which
            implements IArgumentProvider to get 2nd and additional values.  The ListArgumentProvider 
            continues to hold onto the 1st expression.  
            
            This enables users to get the ReadOnlyCollection w/o it consuming more memory than if 
            it was just an array.  Meanwhile The DLR internally avoids accessing  which would force 
            the readonly collection to be created resulting in a typical memory savings.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ReturnObject``1(System.Object)">
            <summary>
            Helper which is used for specialized subtypes which use ReturnReadOnly(ref object, ...). 
            This is the reverse version of ReturnReadOnly which takes an IArgumentProvider.
            
            This is used to return the 1st argument.  The 1st argument is typed as object and either
            contains a ReadOnlyCollection or the Expression.  We check for the Expression and if it's
            present we return that, otherwise we return the 1st element of the ReadOnlyCollection.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeIndex(Microsoft.Scripting.Ast.Expression,System.Reflection.PropertyInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/> that represents accessing an indexed property in an object.
            </summary>
            <param name="instance">The object to which the property belongs. Should be null if the property is static(shared).</param>
            <param name="indexer">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> representing the property to index.</param>
            <param name="arguments">An IEnumerable{Expression} contaning the arguments to be used to index the property.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ArrayAccess(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.IndexExpression"></see> to access an array.
            </summary>
            <param name="array">An expression representing the array to index.</param>
            <param name="indexes">An array containing expressions used to index the array.</param>
            <remarks>The expression representing the array can be obtained by using the MakeMemberAccess method, 
            or through NewArrayBounds or NewArrayInit.</remarks>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ArrayAccess(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.IndexExpression"></see> to access an array.
            </summary>
            <param name="array">An expression representing the array to index.</param>
            <param name="indexes">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing expressions used to index the array.</param>
            <remarks>The expression representing the array can be obtained by using the MakeMemberAccess method, 
            or through NewArrayBounds or NewArrayInit.</remarks>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Property(Microsoft.Scripting.Ast.Expression,System.String,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/> representing the access to an indexed property.
            </summary>
            <param name="instance">The object to which the property belongs. If the property is static/shared, it must be null.</param>
            <param name="propertyName">The name of the indexer.</param>
            <param name="arguments">An array of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects that are used to index the property.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.FindInstanceProperty(System.Type,System.String,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            The method finds the instance property with the specified name in a type. The property's type signature needs to be compatible with
            the arguments if it is a indexer. If the arguments is null or empty, we get a normal property.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Property(Microsoft.Scripting.Ast.Expression,System.Reflection.PropertyInfo,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/> representing the access to an indexed property.
            </summary>
            <param name="instance">The object to which the property belongs. If the property is static/shared, it must be null.</param>
            <param name="indexer">The <see cref="T:System.Reflection.PropertyInfo"/> that represents the property to index.</param>
            <param name="arguments">An array of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects that are used to index the property.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Property(Microsoft.Scripting.Ast.Expression,System.Reflection.PropertyInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/> representing the access to an indexed property.
            </summary>
            <param name="instance">The object to which the property belongs. If the property is static/shared, it must be null.</param>
            <param name="indexer">The <see cref="T:System.Reflection.PropertyInfo"/> that represents the property to index.</param>
            <param name="arguments">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects that are used to index the property.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.IndexExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Invoke(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates an <see cref="T:System.Linq.Expressions.InvocationExpression" /> that 
            applies a delegate or lambda expression to a list of argument expressions.
            </summary>
            <returns>
            An <see cref="T:System.Linq.Expressions.InvocationExpression" /> that 
            applies the specified delegate or lambda expression to the provided arguments.
            </returns>
            <param name="expression">
            An <see cref="T:System.Linq.Expressions.Expression" /> that represents the delegate
            or lambda expression to be applied.
            </param>
            <param name="arguments">
            An array of <see cref="T:System.Linq.Expressions.Expression" /> objects
            that represent the arguments that the delegate or lambda expression is applied to.
            </param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="expression" />.Type does not represent a delegate type or an <see cref="T:System.Linq.Expressions.Expression`1" />.-or-The <see cref="P:System.Linq.Expressions.Expression.Type" /> property of an element of <paramref name="arguments" /> is not assignable to the type of the corresponding parameter of the delegate represented by <paramref name="expression" />.</exception>
            <exception cref="T:System.InvalidOperationException">
            <paramref name="arguments" /> does not contain the same number of elements as the list of parameters for the delegate represented by <paramref name="expression" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Invoke(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates an <see cref="T:System.Linq.Expressions.InvocationExpression" /> that 
            applies a delegate or lambda expression to a list of argument expressions.
            </summary>
            <returns>
            An <see cref="T:System.Linq.Expressions.InvocationExpression" /> that 
            applies the specified delegate or lambda expression to the provided arguments.
            </returns>
            <param name="expression">
            An <see cref="T:System.Linq.Expressions.Expression" /> that represents the delegate
            or lambda expression to be applied.
            </param>
            <param name="arguments">
            An <see cref="T:System.Collections.Generic.IEnumerable`1" /> of <see cref="T:System.Linq.Expressions.Expression" /> objects
            that represent the arguments that the delegate or lambda expression is applied to.
            </param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="expression" />.Type does not represent a delegate type or an <see cref="T:System.Linq.Expressions.Expression`1" />.-or-The <see cref="P:System.Linq.Expressions.Expression.Type" /> property of an element of <paramref name="arguments" /> is not assignable to the type of the corresponding parameter of the delegate represented by <paramref name="expression" />.</exception>
            <exception cref="T:System.InvalidOperationException">
            <paramref name="arguments" /> does not contain the same number of elements as the list of parameters for the delegate represented by <paramref name="expression" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GetInvokeMethod(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Gets the delegate's Invoke method; used by InvocationExpression.
            </summary>
            <param name="expression">The expression to be invoked.</param>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Label">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> representing a label with void type and no name.
            </summary>
            <returns>The new <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Label(System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> representing a label with void type and the given name.
            </summary>
            <param name="name">The name of the label.</param>
            <returns>The new <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Label(System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> representing a label with the given type.
            </summary>
            <param name="type">The type of value that is passed when jumping to the label.</param>
            <returns>The new <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Label(System.Type,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> representing a label with the given type and name.
            </summary>
            <param name="type">The type of value that is passed when jumping to the label.</param>
            <param name="name">The name of the label.</param>
            <returns>The new <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Label(Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> representing a label with no default value.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> which this <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> will be associated with.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> with no default value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Label(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> representing a label with the given default value.
            </summary>
            <param name="target">The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> which this <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> will be associated with.</param>
            <param name="defaultValue">The value of this <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> when the label is reached through normal control flow.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> with the given default value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.CreateLambda(System.Type,Microsoft.Scripting.Ast.Expression,System.String,System.Boolean,System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates an Expression{T} given the delegate type. Caches the
            factory method to speed up repeated creations for the same T.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda``1(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.ParameterExpression[])">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> where the delegate type is known at compile time. 
            </summary>
            <typeparam name="TDelegate">The delegate type. </typeparam>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An array that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>An <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> that has the <see cref="P:NodeType"/> property equal to <see cref="P:Lambda"/> and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda``1(Microsoft.Scripting.Ast.Expression,System.Boolean,Microsoft.Scripting.Ast.ParameterExpression[])">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> where the delegate type is known at compile time. 
            </summary>
            <typeparam name="TDelegate">The delegate type. </typeparam>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An array that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>An <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> that has the <see cref="P:NodeType"/> property equal to <see cref="P:Lambda"/> and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda``1(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> where the delegate type is known at compile time. 
            </summary>
            <typeparam name="TDelegate">The delegate type. </typeparam>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>An <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> that has the <see cref="P:NodeType"/> property equal to <see cref="P:Lambda"/> and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda``1(Microsoft.Scripting.Ast.Expression,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> where the delegate type is known at compile time. 
            </summary>
            <typeparam name="TDelegate">The delegate type. </typeparam>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>An <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> that has the <see cref="P:NodeType"/> property equal to <see cref="P:Lambda"/> and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda``1(Microsoft.Scripting.Ast.Expression,System.String,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> where the delegate type is known at compile time. 
            </summary>
            <typeparam name="TDelegate">The delegate type. </typeparam>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="name">The name of the lambda. Used for generating debugging info.</param>
            <returns>An <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> that has the <see cref="P:NodeType"/> property equal to <see cref="P:Lambda"/> and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda``1(Microsoft.Scripting.Ast.Expression,System.String,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates an <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> where the delegate type is known at compile time. 
            </summary>
            <typeparam name="TDelegate">The delegate type. </typeparam>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="name">The name of the lambda. Used for generating debugging info.</param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <returns>An <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> that has the <see cref="P:NodeType"/> property equal to <see cref="P:Lambda"/> and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.ParameterExpression[])">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An array that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(Microsoft.Scripting.Ast.Expression,System.Boolean,Microsoft.Scripting.Ast.ParameterExpression[])">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An array that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(Microsoft.Scripting.Ast.Expression,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.ParameterExpression[])">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An array that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="delegateType">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> representing the delegate signature for the lambda.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(System.Type,Microsoft.Scripting.Ast.Expression,System.Boolean,Microsoft.Scripting.Ast.ParameterExpression[])">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An array that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="delegateType">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> representing the delegate signature for the lambda.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(System.Type,Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="delegateType">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> representing the delegate signature for the lambda.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(System.Type,Microsoft.Scripting.Ast.Expression,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="delegateType">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> representing the delegate signature for the lambda.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(Microsoft.Scripting.Ast.Expression,System.String,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="name">The name for the lambda. Used for emitting debug information.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(Microsoft.Scripting.Ast.Expression,System.String,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="name">The name for the lambda. Used for emitting debug information.</param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(System.Type,Microsoft.Scripting.Ast.Expression,System.String,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <param name="name">The name for the lambda. Used for emitting debug information.</param>
            <param name="delegateType">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> representing the delegate signature for the lambda.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Lambda(System.Type,Microsoft.Scripting.Ast.Expression,System.String,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a LambdaExpression by first constructing a delegate type. 
            </summary>
            <param name="delegateType">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> representing the delegate signature for the lambda.</param>
            <param name="body">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="P:Body"/> property equal to. </param>
            <param name="name">The name for the lambda. Used for emitting debug information.</param>
            <param name="tailCall">A <see cref="T:System.Boolean"/> that indicates if tail call optimization will be applied when compiling the created expression. </param>
            <param name="parameters">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> objects to use to populate the <see cref="P:Parameters"/> collection. </param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> that has the <see cref="P:NodeType"/> property equal to Lambda and the <see cref="P:Body"/> and <see cref="P:Parameters"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GetFuncType(System.Type[])">
            <summary>
            Creates a <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> object that represents a generic System.Func delegate type that has specific type arguments.
            The last type argument specifies the return type of the created delegate.
            </summary>
            <param name="typeArgs">An array of Type objects that specify the type arguments for the System.Func delegate type.</param>
            <returns>The type of a System.Func delegate that has the specified type arguments.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TryGetFuncType(System.Type[],System.Type@)">
            <summary>
            Creates a <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> object that represents a generic System.Func delegate type that has specific type arguments.
            The last type argument specifies the return type of the created delegate.
            </summary>
            <param name="typeArgs">An array of Type objects that specify the type arguments for the System.Func delegate type.</param>
            <param name="funcType">When this method returns, contains the generic System.Func delegate type that has specific type arguments. Contains null if there is no generic System.Func delegate that matches the <paramref name="typeArgs"/>.This parameter is passed uninitialized.</param>
            <returns>true if generic System.Func delegate type was created for specific <paramref name="typeArgs"/>; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GetActionType(System.Type[])">
            <summary>
            Creates a <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> object that represents a generic System.Action delegate type that has specific type arguments. 
            </summary>
            <param name="typeArgs">An array of Type objects that specify the type arguments for the System.Action delegate type.</param>
            <returns>The type of a System.Action delegate that has the specified type arguments.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TryGetActionType(System.Type[],System.Type@)">
            <summary>
            Creates a <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> object that represents a generic System.Action delegate type that has specific type arguments.
            </summary>
            <param name="typeArgs">An array of Type objects that specify the type arguments for the System.Action delegate type.</param>
            <param name="actionType">When this method returns, contains the generic System.Action delegate type that has specific type arguments. Contains null if there is no generic System.Action delegate that matches the <paramref name="typeArgs"/>.This parameter is passed uninitialized.</param>
            <returns>true if generic System.Action delegate type was created for specific <paramref name="typeArgs"/>; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.GetDelegateType(System.Type[])">
            <summary>
            Gets a <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> object that represents a generic System.Func or System.Action delegate type that has specific type arguments.
            The last type argument determines the return type of the delegate. If no Func or Action is large enough, it will generate a custom
            delegate type.
            </summary>
            <param name="typeArgs">The type arguments of the delegate.</param>
            <returns>The delegate type.</returns>
            <remarks>
            As with Func, the last argument is the return type. It can be set
            to System.Void to produce an Action.</remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListInit(Microsoft.Scripting.Ast.NewExpression,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that uses a method named "Add" to add elements to a collection.
            </summary>
            <param name="newExpression">A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> to set the <see cref="P:ListInitExpression.NewExpression"/> property equal to.</param>
            <param name="initializers">An array of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects to use to populate the <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers"/> collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that has the <see cref="P:ListInitExpression.NodeType"/> property equal to ListInit and the <see cref="P:ListInitExpression.NewExpression"/> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListInit(Microsoft.Scripting.Ast.NewExpression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that uses a method named "Add" to add elements to a collection.
            </summary>
            <param name="newExpression">A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> to set the <see cref="P:ListInitExpression.NewExpression"/> property equal to.</param>
            <param name="initializers">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="M:ElementInit"/> objects to use to populate the <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers"/> collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that has the <see cref="P:ListInitExpression.NodeType"/> property equal to ListInit and the <see cref="P:ListInitExpression.NewExpression"/> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListInit(Microsoft.Scripting.Ast.NewExpression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that uses a specified method to add elements to a collection. 
            </summary>
            <param name="newExpression">A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> to set the <see cref="P:ListInitExpression.NewExpression"/> property equal to.</param>
            <param name="addMethod">A <see cref="T:System.Reflection.MethodInfo"/> that represents an instance method named "Add" (case insensitive), that adds an element to a collection. </param>
            <param name="initializers">An array of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects to use to populate the <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers"/> collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that has the <see cref="P:ListInitExpression.NodeType"/> property equal to ListInit and the <see cref="P:ListInitExpression.NewExpression"/> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListInit(Microsoft.Scripting.Ast.NewExpression,System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that uses a specified method to add elements to a collection. 
            </summary>
            <param name="newExpression">A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> to set the <see cref="P:ListInitExpression.NewExpression"/> property equal to.</param>
            <param name="addMethod">A <see cref="T:System.Reflection.MethodInfo"/> that represents an instance method named "Add" (case insensitive), that adds an element to a collection. </param>
            <param name="initializers">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects to use to populate the Initializers collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that has the <see cref="P:ListInitExpression.NodeType"/> property equal to ListInit and the <see cref="P:ListInitExpression.NewExpression"/> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListInit(Microsoft.Scripting.Ast.NewExpression,Microsoft.Scripting.Ast.ElementInit[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that uses specified <see cref="M:ElementInit"/> objects to initialize a collection. 
            </summary>
            <param name="newExpression">A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> to set the <see cref="P:ListInitExpression.NewExpression"/> property equal to.</param>
            <param name="initializers">An array that contains <see cref="M:ElementInit"/> objects to use to populate the <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers"/> collection.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that has the <see cref="P:Expressions.NodeType"/> property equal to ListInit 
            and the <see cref="P:ListInitExpression.NewExpression"/> and <see cref="P:ListInitExpression.Initializers"/> properties set to the specified values.
            </returns>
            <remarks>
            The <see cref="P:Expressions.Type"/> property of <paramref name="newExpression"/> must represent a type that implements <see cref="T:System.Collections.IEnumerable"/>. 
            The <see cref="P:Expressions.Type"/> property of the resulting <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> is equal to newExpression.Type. 
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListInit(Microsoft.Scripting.Ast.NewExpression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ElementInit})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> that uses specified <see cref="M:ElementInit"/> objects to initialize a collection. 
            </summary>
            <param name="newExpression">A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> to set the <see cref="P:ListInitExpression.NewExpression"/> property equal to.</param>
            <param name="initializers">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="M:ElementInit"/> objects to use to populate the <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers"/> collection.</param>
            <returns>An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="M:ElementInit"/> objects to use to populate the <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers"/> collection.</returns>
            <remarks>
            The <see cref="P:Expressions.Type"/> property of <paramref name="newExpression"/> must represent a type that implements <see cref="T:System.Collections.IEnumerable"/>. 
            The <see cref="P:Expressions.Type"/> property of the resulting <see cref="T:Microsoft.Scripting.Ast.ListInitExpression"/> is equal to newExpression.Type. 
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.RuntimeVariables(Microsoft.Scripting.Ast.ParameterExpression[])">
            <summary>
            Creates an instance of <see cref="T:System.Linq.Expressions.RuntimeVariablesExpression" />.
            </summary>
            <param name="variables">An array of <see cref="T:System.Linq.Expressions.ParameterExpression" /> objects to use to populate the <see cref="P:System.Linq.Expressions.RuntimeVariablesExpression.Variables" /> collection.</param>
            <returns>An instance of <see cref="T:System.Linq.Expressions.RuntimeVariablesExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.RuntimeVariables" /> and the <see cref="P:System.Linq.Expressions.RuntimeVariablesExpression.Variables" /> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.RuntimeVariables(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates an instance of <see cref="T:System.Linq.Expressions.RuntimeVariablesExpression" />.
            </summary>
            <param name="variables">A collection of <see cref="T:System.Linq.Expressions.ParameterExpression" /> objects to use to populate the <see cref="P:System.Linq.Expressions.RuntimeVariablesExpression.Variables" /> collection.</param>
            <returns>An instance of <see cref="T:System.Linq.Expressions.RuntimeVariablesExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.RuntimeVariables" /> and the <see cref="P:System.Linq.Expressions.RuntimeVariablesExpression.Variables" /> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Loop(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LoopExpression"/> with the given body.
            </summary>
            <param name="body">The body of the loop.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.LoopExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Loop(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LoopExpression"/> with the given body and break target.
            </summary>
            <param name="body">The body of the loop.</param>
            <param name="break">The break target used by the loop body.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.LoopExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Loop(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.LabelTarget)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LoopExpression"/> with the given body.
            </summary>
            <param name="body">The body of the loop.</param>
            <param name="break">The break target used by the loop body.</param>
            <param name="continue">The continue target used by the loop body.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.LoopExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Bind(System.Reflection.MemberInfo,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberAssignment"/> binding the specified value to the given member.
            </summary>
            <param name="member">The <see cref="T:System.Reflection.MemberInfo"/> for the member which is being assigned to.</param>
            <param name="expression">The value to be assigned to <paramref name="member"/>.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberAssignment"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Bind(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberAssignment"/> binding the specified value to the given property.
            </summary>
            <param name="propertyAccessor">The <see cref="T:System.Reflection.PropertyInfo"/> for the property which is being assigned to.</param>
            <param name="expression">The value to be assigned to <paramref name="propertyAccessor"/>.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberAssignment"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Field(Microsoft.Scripting.Ast.Expression,System.Reflection.FieldInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a field.
            </summary>
            <param name="expression">The containing object of the field.  This can be null for static fields.</param>
            <param name="field">The field to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Field(Microsoft.Scripting.Ast.Expression,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a field.
            </summary>
            <param name="expression">The containing object of the field.  This can be null for static fields.</param>
            <param name="fieldName">The field to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Field(Microsoft.Scripting.Ast.Expression,System.Type,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a field.
            </summary>
            <param name="expression">The containing object of the field.  This can be null for static fields.</param>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> containing the field.</param>
            <param name="fieldName">The field to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Property(Microsoft.Scripting.Ast.Expression,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a property.
            </summary>
            <param name="expression">The containing object of the property.  This can be null for static properties.</param>
            <param name="propertyName">The property to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Property(Microsoft.Scripting.Ast.Expression,System.Type,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a property.
            </summary>
            <param name="expression">The containing object of the property.  This can be null for static properties.</param>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> containing the property.</param>
            <param name="propertyName">The property to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Property(Microsoft.Scripting.Ast.Expression,System.Reflection.PropertyInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a property.
            </summary>
            <param name="expression">The containing object of the property.  This can be null for static properties.</param>
            <param name="property">The property to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Property(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a property.
            </summary>
            <param name="expression">The containing object of the property.  This can be null for static properties.</param>
            <param name="propertyAccessor">An accessor method of the property to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PropertyOrField(Microsoft.Scripting.Ast.Expression,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a property or field.
            </summary>
            <param name="expression">The containing object of the member.  This can be null for static members.</param>
            <param name="propertyOrFieldName">The member to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeMemberAccess(Microsoft.Scripting.Ast.Expression,System.Reflection.MemberInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/> accessing a property or field.
            </summary>
            <param name="expression">The containing object of the member.  This can be null for static members.</param>
            <param name="member">The member to be accessed.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.MemberExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MemberInit(Microsoft.Scripting.Ast.NewExpression,Microsoft.Scripting.Ast.MemberBinding[])">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MemberInitExpression" />.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MemberInitExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.MemberInit" /> and the <see cref="P:System.Linq.Expressions.MemberInitExpression.NewExpression" /> and <see cref="P:System.Linq.Expressions.MemberInitExpression.Bindings" /> properties set to the specified values.</returns>
            <param name="newExpression">A <see cref="T:System.Linq.Expressions.NewExpression" /> to set the <see cref="P:System.Linq.Expressions.MemberInitExpression.NewExpression" /> property equal to.</param>
            <param name="bindings">An array of <see cref="T:System.Linq.Expressions.MemberBinding" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MemberInitExpression.Bindings" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="newExpression" /> or <paramref name="bindings" /> is null.</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> property of an element of <paramref name="bindings" /> does not represent a member of the type that <paramref name="newExpression" />.Type represents.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MemberInit(Microsoft.Scripting.Ast.NewExpression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.MemberBinding})">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MemberInitExpression" />.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MemberInitExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.MemberInit" /> and the <see cref="P:System.Linq.Expressions.MemberInitExpression.NewExpression" /> and <see cref="P:System.Linq.Expressions.MemberInitExpression.Bindings" /> properties set to the specified values.</returns>
            <param name="newExpression">A <see cref="T:System.Linq.Expressions.NewExpression" /> to set the <see cref="P:System.Linq.Expressions.MemberInitExpression.NewExpression" /> property equal to.</param>
            <param name="bindings">An <see cref="T:System.Collections.Generic.IEnumerable`1" /> that contains <see cref="T:System.Linq.Expressions.MemberBinding" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MemberInitExpression.Bindings" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="newExpression" /> or <paramref name="bindings" /> is null.</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> property of an element of <paramref name="bindings" /> does not represent a member of the type that <paramref name="newExpression" />.Type represents.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListBind(System.Reflection.MemberInfo,Microsoft.Scripting.Ast.ElementInit[])">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MemberListBinding" /> where the member is a field or property.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MemberListBinding" /> that has the <see cref="P:System.Linq.Expressions.MemberBinding.BindingType" /> property equal to <see cref="F:System.Linq.Expressions.MemberBindingType.ListBinding" /> and the <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> and <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> properties set to the specified values.</returns>
            <param name="member">A <see cref="T:System.Reflection.MemberInfo" /> that represents a field or property to set the <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> property equal to.</param>
            <param name="initializers">An array of <see cref="T:System.Linq.Expressions.ElementInit" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="member" /> is null. -or-One or more elements of <paramref name="initializers" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="member" /> does not represent a field or property.-or-The <see cref="P:System.Reflection.FieldInfo.FieldType" /> or <see cref="P:System.Reflection.PropertyInfo.PropertyType" /> of the field or property that <paramref name="member" /> represents does not implement <see cref="T:System.Collections.IEnumerable" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListBind(System.Reflection.MemberInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ElementInit})">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MemberListBinding" /> where the member is a field or property.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MemberListBinding" /> that has the <see cref="P:System.Linq.Expressions.MemberBinding.BindingType" /> property equal to <see cref="F:System.Linq.Expressions.MemberBindingType.ListBinding" /> and the <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> and <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> properties set to the specified values.</returns>
            <param name="member">A <see cref="T:System.Reflection.MemberInfo" /> that represents a field or property to set the <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> property equal to.</param>
            <param name="initializers">An <see cref="T:System.Collections.Generic.IEnumerable`1" /> that contains <see cref="T:System.Linq.Expressions.ElementInit" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="member" /> is null. -or-One or more elements of <paramref name="initializers" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="member" /> does not represent a field or property.-or-The <see cref="P:System.Reflection.FieldInfo.FieldType" /> or <see cref="P:System.Reflection.PropertyInfo.PropertyType" /> of the field or property that <paramref name="member" /> represents does not implement <see cref="T:System.Collections.IEnumerable" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListBind(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.ElementInit[])">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MemberListBinding" /> object based on a specified property accessor method.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MemberListBinding" /> that has the <see cref="P:System.Linq.Expressions.MemberBinding.BindingType" /> property equal to <see cref="F:System.Linq.Expressions.MemberBindingType.ListBinding" />, the <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> property set to the <see cref="T:System.Reflection.MemberInfo" /> that represents the property accessed in <paramref name="propertyAccessor" />, and <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> populated with the elements of <paramref name="initializers" />.</returns>
            <param name="propertyAccessor">A <see cref="T:System.Reflection.MethodInfo" /> that represents a property accessor method.</param>
            <param name="initializers">An array of <see cref="T:System.Linq.Expressions.ElementInit" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="propertyAccessor" /> is null. -or-One or more elements of <paramref name="initializers" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="propertyAccessor" /> does not represent a property accessor method.-or-The <see cref="P:System.Reflection.PropertyInfo.PropertyType" /> of the property that the method represented by <paramref name="propertyAccessor" /> accesses does not implement <see cref="T:System.Collections.IEnumerable" />.</exception>  
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ListBind(System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ElementInit})">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MemberListBinding" /> based on a specified property accessor method.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MemberListBinding" /> that has the <see cref="P:System.Linq.Expressions.MemberBinding.BindingType" /> property equal to <see cref="F:System.Linq.Expressions.MemberBindingType.ListBinding" />, the <see cref="P:System.Linq.Expressions.MemberBinding.Member" /> property set to the <see cref="T:System.Reflection.MemberInfo" /> that represents the property accessed in <paramref name="propertyAccessor" />, and <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> populated with the elements of <paramref name="initializers" />.</returns>
            <param name="propertyAccessor">A <see cref="T:System.Reflection.MethodInfo" /> that represents a property accessor method.</param>
            <param name="initializers">An <see cref="T:System.Collections.Generic.IEnumerable`1" /> that contains <see cref="T:System.Linq.Expressions.ElementInit" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MemberListBinding.Initializers" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="propertyAccessor" /> is null. -or-One or more elements of <paramref name="initializers" /> are null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="propertyAccessor" /> does not represent a property accessor method.-or-The <see cref="P:System.Reflection.PropertyInfo.PropertyType" /> of the property that the method represented by <paramref name="propertyAccessor" /> accesses does not implement <see cref="T:System.Collections.IEnumerable" />.</exception>        
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MemberBind(System.Reflection.MemberInfo,Microsoft.Scripting.Ast.MemberBinding[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that represents the recursive initialization of members of a field or property. 
            </summary>
            <param name="member">The <see cref="T:System.Reflection.MemberInfo"/> to set the <see cref="P:MemberBinding.Member"/> property equal to.</param>
            <param name="bindings">An array of <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/> objects to use to populate the <see cref="P:MemberMemberBindings.Bindings"/> collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that has the <see cref="P:MemberBinding.BindingType"/> property equal to <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/> and the <see cref="P:MemberBinding.Member"/> and <see cref="P:MemberMemberBindings.Bindings"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MemberBind(System.Reflection.MemberInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.MemberBinding})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that represents the recursive initialization of members of a field or property. 
            </summary>
            <param name="member">The <see cref="T:System.Reflection.MemberInfo"/> to set the <see cref="P:MemberBinding.Member"/> property equal to.</param>
            <param name="bindings">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/> objects to use to populate the <see cref="P:MemberMemberBindings.Bindings"/> collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that has the <see cref="P:MemberBinding.BindingType"/> property equal to <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/> and the <see cref="P:MemberBinding.Member"/> and <see cref="P:MemberMemberBindings.Bindings"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MemberBind(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.MemberBinding[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that represents the recursive initialization of members of a member that is accessed by using a property accessor method.  
            </summary>
            <param name="propertyAccessor">The <see cref="T:System.Reflection.MemberInfo"/> that represents a property accessor method.</param>
            <param name="bindings">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/> objects to use to populate the <see cref="P:MemberMemberBindings.Bindings"/> collection.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that has the <see cref="P:MemberBinding.BindingType"/> property equal to <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/>, 
            the Member property set to the <see cref="T:System.Reflection.PropertyInfo"/> that represents the property accessed in <paramref name="propertyAccessor"/>, 
            and <see cref="P:MemberMemberBindings.Bindings"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MemberBind(System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.MemberBinding})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that represents the recursive initialization of members of a member that is accessed by using a property accessor method.  
            </summary>
            <param name="propertyAccessor">The <see cref="T:System.Reflection.MemberInfo"/> that represents a property accessor method.</param>
            <param name="bindings">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/> objects to use to populate the <see cref="P:MemberMemberBindings.Bindings"/> collection.</param>
            <returns>
            A <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> that has the <see cref="P:MemberBinding.BindingType"/> property equal to <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/>, 
            the Member property set to the <see cref="T:System.Reflection.PropertyInfo"/> that represents the property accessed in <paramref name="propertyAccessor"/>, 
            and <see cref="P:MemberMemberBindings.Bindings"/> properties set to the specified values.
            </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that represents a call to a static method that takes one argument.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> property equal to.</param>
            <param name="arg0">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the first argument.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="method"/> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that represents a call to a static method that takes two arguments.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> property equal to.</param>
            <param name="arg0">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the first argument.</param>
            <param name="arg1">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the second argument.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="method"/> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that represents a call to a static method that takes three arguments.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> property equal to.</param>
            <param name="arg0">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the first argument.</param>
            <param name="arg1">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the second argument.</param>
            <param name="arg2">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the third argument.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="method"/> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that represents a call to a static method that takes four arguments.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> property equal to.</param>
            <param name="arg0">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the first argument.</param>
            <param name="arg1">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the second argument.</param>
            <param name="arg2">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the third argument.</param>
            <param name="arg3">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the fourth argument.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="method"/> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that represents a call to a static method that takes five arguments.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> property equal to.</param>
            <param name="arg0">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the first argument.</param>
            <param name="arg1">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the second argument.</param>
            <param name="arg2">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the third argument.</param>
            <param name="arg3">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the fourth argument.</param>
            <param name="arg4">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the fifth argument.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="method"/> is null.</exception>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression[])">
             <summary>
             Creates a <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/> that represents a call to a static (Shared in Visual Basic) method.
             </summary>
             <param name="method">The <see cref="T:System.Reflection.MethodInfo"/> that represents the target method.</param>
             <param name="arguments">The array of one or more of <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the call arguments.</param>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
             <summary>
             Creates a <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/> that represents a call to a static (Shared in Visual Basic) method.
             </summary>
             <param name="method">The <see cref="T:System.Reflection.MethodInfo"/> that represents the target method.</param>
             <param name="arguments">A collection of <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the call arguments.</param>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
             <summary>
             Creates a <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/> that represents a call to a method that takes no arguments.
             </summary>
             <param name="instance">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> that specifies the instance for an instance call. (pass null for a static (Shared in Visual Basic) method).</param>
             <param name="method">The <see cref="T:System.Reflection.MethodInfo"/> that represents the target method.</param>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression[])">
             <summary>
             Creates a <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/> that represents a method call.
             </summary>
             <param name="instance">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> that specifies the instance for an instance call. (pass null for a static (Shared in Visual Basic) method).</param>
             <param name="method">The <see cref="T:System.Reflection.MethodInfo"/> that represents the target method.</param>
             <param name="arguments">An array of one or more of <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the call arguments.</param>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
             <summary>
             Creates a <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/> that represents a call to a method that takes two arguments.
             </summary>
             <param name="instance">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> that specifies the instance for an instance call. (pass null for a static (Shared in Visual Basic) method).</param>
             <param name="method">The <see cref="T:System.Reflection.MethodInfo"/> that represents the target method.</param>
             <param name="arg0">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the first argument.</param>
             <param name="arg1">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the second argument.</param>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
             <summary>
             Creates a <see cref="T:Microsoft.Scripting.Ast.MethodCallExpression"/> that represents a call to a method that takes three arguments.
             </summary>
             <param name="instance">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> that specifies the instance for an instance call. (pass null for a static (Shared in Visual Basic) method).</param>
             <param name="method">The <see cref="T:System.Reflection.MethodInfo"/> that represents the target method.</param>
             <param name="arg0">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the first argument.</param>
             <param name="arg1">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the second argument.</param>
             <param name="arg2">The <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the third argument.</param>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression"/> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType"/> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call"/> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object"/> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Method"/> properties set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(Microsoft.Scripting.Ast.Expression,System.String,System.Type[],Microsoft.Scripting.Ast.Expression[])">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents a call to an instance method by calling the appropriate factory method.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call" />, the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object" /> property equal to <paramref name="instance" />, <see cref="P:System.Linq.Expressions.MethodCallExpression.Method" /> set to the <see cref="T:System.Reflection.MethodInfo" /> that represents the specified instance method, and <see cref="P:System.Linq.Expressions.MethodCallExpression.Arguments" /> set to the specified arguments.</returns>
            <param name="instance">An <see cref="T:System.Linq.Expressions.Expression" /> whose <see cref="P:System.Linq.Expressions.Expression.Type" /> property value will be searched for a specific method.</param>
            <param name="methodName">The name of the method.</param>
            <param name="typeArguments">
            An array of <see cref="T:System.Type" /> objects that specify the type parameters of the generic method.
            This argument should be null when <paramref name="methodName" /> specifies a non-generic method.
            </param>
            <param name="arguments">An array of <see cref="T:System.Linq.Expressions.Expression" /> objects that represents the arguments to the method.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="instance" /> or <paramref name="methodName" /> is null.</exception>
            <exception cref="T:System.InvalidOperationException">No method whose name is <paramref name="methodName" />, whose type parameters match <paramref name="typeArguments" />, and whose parameter types match <paramref name="arguments" /> is found in <paramref name="instance" />.Type or its base types.-or-More than one method whose name is <paramref name="methodName" />, whose type parameters match <paramref name="typeArguments" />, and whose parameter types match <paramref name="arguments" /> is found in <paramref name="instance" />.Type or its base types.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(System.Type,System.String,System.Type[],Microsoft.Scripting.Ast.Expression[])">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents a call to a static (Shared in Visual Basic) method by calling the appropriate factory method.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call" />, the <see cref="P:System.Linq.Expressions.MethodCallExpression.Method" /> property set to the <see cref="T:System.Reflection.MethodInfo" /> that represents the specified static (Shared in Visual Basic) method, and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Arguments" /> property set to the specified arguments.</returns>
            <param name="type">The <see cref="T:System.Type" /> that specifies the type that contains the specified static (Shared in Visual Basic) method.</param>
            <param name="methodName">The name of the method.</param>
            <param name="typeArguments">
            An array of <see cref="T:System.Type" /> objects that specify the type parameters of the generic method.
            This argument should be null when <paramref name="methodName" /> specifies a non-generic method.
            </param>
            <param name="arguments">An array of <see cref="T:System.Linq.Expressions.Expression" /> objects that represent the arguments to the method.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="type" /> or <paramref name="methodName" /> is null.</exception>
            <exception cref="T:System.InvalidOperationException">No method whose name is <paramref name="methodName" />, whose type parameters match <paramref name="typeArguments" />, and whose parameter types match <paramref name="arguments" /> is found in <paramref name="type" /> or its base types.-or-More than one method whose name is <paramref name="methodName" />, whose type parameters match <paramref name="typeArguments" />, and whose parameter types match <paramref name="arguments" /> is found in <paramref name="type" /> or its base types.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Call(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents a method call.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call" /> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object" />, <see cref="P:System.Linq.Expressions.MethodCallExpression.Method" />, and <see cref="P:System.Linq.Expressions.MethodCallExpression.Arguments" /> properties set to the specified values.</returns>
            <param name="instance">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object" /> property equal to (pass null for a static (Shared in Visual Basic) method).</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Method" /> property equal to.</param>
            <param name="arguments">An <see cref="T:System.Collections.Generic.IEnumerable`1" /> that contains <see cref="T:System.Linq.Expressions.Expression" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MethodCallExpression.Arguments" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="method" /> is null.-or-<paramref name="instance" /> is null and <paramref name="method" /> represents an instance method.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="instance" />.Type is not assignable to the declaring type of the method represented by <paramref name="method" />.-or-The number of elements in <paramref name="arguments" /> does not equal the number of parameters for the method represented by <paramref name="method" />.-or-One or more of the elements of <paramref name="arguments" /> is not assignable to the corresponding parameter for the method represented by <paramref name="method" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ArrayIndex(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression[])">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents applying an array index operator to a multi-dimensional array.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.BinaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.ArrayIndex" /> and the <see cref="P:System.Linq.Expressions.BinaryExpression.Left" /> and <see cref="P:System.Linq.Expressions.BinaryExpression.Right" /> properties set to the specified values.</returns>
            <param name="array">An array of <see cref="T:System.Linq.Expressions.Expression" /> instances - indexes for the array index operation.</param>
            <param name="indexes">An array that contains <see cref="T:System.Linq.Expressions.Expression" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MethodCallExpression.Arguments" /> collection.</param>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ArrayIndex(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>Creates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents applying an array index operator to an array of rank more than one.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Call" /> and the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object" /> and <see cref="P:System.Linq.Expressions.MethodCallExpression.Arguments" /> properties set to the specified values.</returns>
            <param name="array">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.MethodCallExpression.Object" /> property equal to.</param>
            <param name="indexes">An <see cref="T:System.Collections.Generic.IEnumerable`1" /> that contains <see cref="T:System.Linq.Expressions.Expression" /> objects to use to populate the <see cref="P:System.Linq.Expressions.MethodCallExpression.Arguments" /> collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array" /> or <paramref name="indexes" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="array" />.Type does not represent an array type.-or-The rank of <paramref name="array" />.Type does not match the number of elements in <paramref name="indexes" />.-or-The <see cref="P:System.Linq.Expressions.Expression.Type" /> property of one or more elements of <paramref name="indexes" /> does not represent the <see cref="T:System.Int32" /> type.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NewArrayInit(System.Type,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a new array expression of the specified type from the provided initializers.
            </summary>
            <param name="type">A Type that represents the element type of the array.</param>
            <param name="initializers">The expressions used to create the array elements.</param>
            <returns>An instance of the <see cref="T:Microsoft.Scripting.Ast.NewArrayExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NewArrayInit(System.Type,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new array expression of the specified type from the provided initializers.
            </summary>
            <param name="type">A Type that represents the element type of the array.</param>
            <param name="initializers">The expressions used to create the array elements.</param>
            <returns>An instance of the <see cref="T:Microsoft.Scripting.Ast.NewArrayExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NewArrayBounds(System.Type,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.NewArrayExpression"/> that represents creating an array that has a specified rank. 
            </summary>
            <param name="type">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> that represents the element type of the array.</param>
            <param name="bounds">An array that contains Expression objects to use to populate the Expressions collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewArrayExpression"/> that has the <see cref="P:NodeType"/> property equal to type and the <see cref="P:Expressions"/> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NewArrayBounds(System.Type,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.NewArrayExpression"/> that represents creating an array that has a specified rank. 
            </summary>
            <param name="type">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> that represents the element type of the array.</param>
            <param name="bounds">An IEnumerable{T} that contains Expression objects to use to populate the Expressions collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewArrayExpression"/> that has the <see cref="P:NodeType"/> property equal to type and the <see cref="P:Expressions"/> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.New(System.Reflection.ConstructorInfo)">
            <summary>
            Creates a new <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that represents calling the specified constructor that takes no arguments. 
            </summary>
            <param name="constructor">The <see cref="T:System.Reflection.ConstructorInfo"/> to set the <see cref="P:Constructor"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property equal to <see cref="P:New"/> and the <see cref="P:Constructor"/> property set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.New(System.Reflection.ConstructorInfo,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a new <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that represents calling the specified constructor that takes no arguments. 
            </summary>
            <param name="constructor">The <see cref="T:System.Reflection.ConstructorInfo"/> to set the <see cref="P:Constructor"/> property equal to.</param>
            <param name="arguments">An array of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects to use to populate the Arguments collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property equal to <see cref="P:New"/> and the <see cref="P:Constructor"/> and <see cref="P:Arguments"/> properties set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.New(System.Reflection.ConstructorInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that represents calling the specified constructor that takes no arguments. 
            </summary>
            <param name="constructor">The <see cref="T:System.Reflection.ConstructorInfo"/> to set the <see cref="P:Constructor"/> property equal to.</param>
            <param name="arguments">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects to use to populate the Arguments collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property equal to <see cref="P:New"/> and the <see cref="P:Constructor"/> and <see cref="P:Arguments"/> properties set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.New(System.Reflection.ConstructorInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression},System.Collections.Generic.IEnumerable{System.Reflection.MemberInfo})">
            <summary>
            Creates a new <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that represents calling the specified constructor with the specified arguments. The members that access the constructor initialized fields are specified. 
            </summary>
            <param name="constructor">The <see cref="T:System.Reflection.ConstructorInfo"/> to set the <see cref="P:Constructor"/> property equal to.</param>
            <param name="arguments">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects to use to populate the Arguments collection.</param>
            <param name="members">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Reflection.MemberInfo"/> objects to use to populate the Members collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property equal to <see cref="P:New"/> and the <see cref="P:Constructor"/>, <see cref="P:Arguments"/> and <see cref="P:Members"/> properties set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.New(System.Reflection.ConstructorInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression},System.Reflection.MemberInfo[])">
            <summary>
            Creates a new <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that represents calling the specified constructor with the specified arguments. The members that access the constructor initialized fields are specified. 
            </summary>
            <param name="constructor">The <see cref="T:System.Reflection.ConstructorInfo"/> to set the <see cref="P:Constructor"/> property equal to.</param>
            <param name="arguments">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:Microsoft.Scripting.Ast.Expression"/> objects to use to populate the Arguments collection.</param>
            <param name="members">An Array of <see cref="T:System.Reflection.MemberInfo"/> objects to use to populate the Members collection.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property equal to <see cref="P:New"/> and the <see cref="P:Constructor"/>, <see cref="P:Arguments"/> and <see cref="P:Members"/> properties set to the specified value.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.New(System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that represents calling the parameterless constructor of the specified type. 
            </summary>
            <param name="type">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> that has a constructor that takes no arguments. </param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.NewExpression"/> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property equal to New and the Constructor property set to the ConstructorInfo that represents the parameterless constructor of the specified type.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Parameter(System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node that can be used to identify a parameter or a variable in an expression tree.
            </summary>
            <param name="type">The type of the parameter or variable.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node with the specified name and type.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Variable(System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node that can be used to identify a parameter or a variable in an expression tree.
            </summary>
            <param name="type">The type of the parameter or variable.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node with the specified name and type.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Parameter(System.Type,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node that can be used to identify a parameter or a variable in an expression tree.
            </summary>
            <param name="type">The type of the parameter or variable.</param>
            <param name="name">The name of the parameter or variable, used for debugging or pretty printing purpose only.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node with the specified name and type.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Variable(System.Type,System.String)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node that can be used to identify a parameter or a variable in an expression tree.
            </summary>
            <param name="type">The type of the parameter or variable.</param>
            <param name="name">The name of the parameter or variable, used for debugging or pretty printing purpose only.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.ParameterExpression"/> node with the specified name and type.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SwitchCase(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a <see cref="T:SwitchCase">SwitchCase</see> for use in a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="body">The body of the case.</param>
            <param name="testValues">The test values of the case.</param>
            <returns>The created <see cref="T:SwitchCase">SwitchCase</see>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.SwitchCase(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a <see cref="T:SwitchCase">SwitchCase</see> for use in a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="body">The body of the case.</param>
            <param name="testValues">The test values of the case.</param>
            <returns>The created <see cref="T:SwitchCase">SwitchCase</see>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Switch(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.SwitchCase[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="switchValue">The value to be tested against each case.</param>
            <param name="cases">The valid cases for this switch.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Switch(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.SwitchCase[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="switchValue">The value to be tested against each case.</param>
            <param name="defaultBody">The result of the switch if no cases are matched.</param>
            <param name="cases">The valid cases for this switch.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Switch(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.SwitchCase[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="switchValue">The value to be tested against each case.</param>
            <param name="defaultBody">The result of the switch if no cases are matched.</param>
            <param name="comparison">The equality comparison method to use.</param>
            <param name="cases">The valid cases for this switch.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Switch(System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,Microsoft.Scripting.Ast.SwitchCase[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="type">The result type of the switch.</param>
            <param name="switchValue">The value to be tested against each case.</param>
            <param name="defaultBody">The result of the switch if no cases are matched.</param>
            <param name="comparison">The equality comparison method to use.</param>
            <param name="cases">The valid cases for this switch.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Switch(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.SwitchCase})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="switchValue">The value to be tested against each case.</param>
            <param name="defaultBody">The result of the switch if no cases are matched.</param>
            <param name="comparison">The equality comparison method to use.</param>
            <param name="cases">The valid cases for this switch.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Switch(System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.SwitchCase})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
            <param name="type">The result type of the switch.</param>
            <param name="switchValue">The value to be tested against each case.</param>
            <param name="defaultBody">The result of the switch if no cases are matched.</param>
            <param name="comparison">The equality comparison method to use.</param>
            <param name="cases">The valid cases for this switch.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ValidateSwitchCaseType(Microsoft.Scripting.Ast.Expression,System.Boolean,System.Type,System.String)">
            <summary>
            If custom type is provided, all branches must be reference assignable to the result type.
            If no custom type is provided, all branches must have the same type - resultType.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TryFault(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.TryExpression"/> representing a try block with a fault block and no catch statements.
            </summary>
            <param name="body">The body of the try block.</param>
            <param name="fault">The body of the fault block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.TryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TryFinally(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.TryExpression"/> representing a try block with a finally block and no catch statements.
            </summary>
            <param name="body">The body of the try block.</param>
            <param name="finally">The body of the finally block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.TryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TryCatch(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.CatchBlock[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.TryExpression"/> representing a try block with any number of catch statements and neither a fault nor finally block.
            </summary>
            <param name="body">The body of the try block.</param>
            <param name="handlers">The array of zero or more <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>s representing the catch statements to be associated with the try block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.TryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TryCatchFinally(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.CatchBlock[])">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.TryExpression"/> representing a try block with any number of catch statements and a finally block.
            </summary>
            <param name="body">The body of the try block.</param>
            <param name="finally">The body of the finally block.</param>
            <param name="handlers">The array of zero or more <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>s representing the catch statements to be associated with the try block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.TryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeTry(System.Type,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.CatchBlock})">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.TryExpression"/> representing a try block with the specified elements.
            </summary>
            <param name="type">The result type of the try expression. If null, bodh and all handlers must have identical type.</param>
            <param name="body">The body of the try block.</param>
            <param name="finally">The body of the finally block. Pass null if the try block has no finally block associated with it.</param>
            <param name="fault">The body of the t block. Pass null if the try block has no fault block associated with it.</param>
            <param name="handlers">A collection of <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>s representing the catch statements to be associated with the try block.</param>
            <returns>The created <see cref="T:Microsoft.Scripting.Ast.TryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TypeIs(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.TypeBinaryExpression"/>.
            </summary>
            <param name="expression">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="T:Microsoft.Scripting.Ast.Expression"/> property equal to.</param>
            <param name="type">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> to set the <see cref="P:Microsoft.Scripting.Ast.TypeBinaryExpression.TypeOperand"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.TypeBinaryExpression"/> for which the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property is equal to <see cref="M:Microsoft.Scripting.Ast.Expression.TypeIs(Microsoft.Scripting.Ast.Expression,System.Type)"/> and for which the <see cref="T:Microsoft.Scripting.Ast.Expression"/> and <see cref="P:Microsoft.Scripting.Ast.TypeBinaryExpression.TypeOperand"/> properties are set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TypeEqual(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.TypeBinaryExpression"/> that compares run-time type identity.
            </summary>
            <param name="expression">An <see cref="T:Microsoft.Scripting.Ast.Expression"/> to set the <see cref="T:Microsoft.Scripting.Ast.Expression"/> property equal to.</param>
            <param name="type">A <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> to set the <see cref="P:Microsoft.Scripting.Ast.TypeBinaryExpression.TypeOperand"/> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.TypeBinaryExpression"/> for which the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"/> property is equal to <see cref="M:Microsoft.Scripting.Ast.Expression.TypeEqual(Microsoft.Scripting.Ast.Expression,System.Type)"/> and for which the <see cref="T:Microsoft.Scripting.Ast.Expression"/> and <see cref="P:Microsoft.Scripting.Ast.TypeBinaryExpression.TypeOperand"/> properties are set to the specified values.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeUnary(Microsoft.Scripting.Ast.ExpressionType,Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see>, given an operand, by calling the appropriate factory method.
            </summary>
            <param name="unaryType">The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"></see> that specifies the type of unary operation.</param>
            <param name="operand">An <see cref="T:Microsoft.Scripting.Ast.Expression"></see> that represents the operand.</param>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"></see> that specifies the type to be converted to (pass null if not applicable).</param>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that results from calling the appropriate factory method.</returns>
            <exception cref="T:System.ArgumentException">Thrown when <paramref name="unaryType"/> does not correspond to a unary expression.</exception>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="operand"/> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.MakeUnary(Microsoft.Scripting.Ast.ExpressionType,Microsoft.Scripting.Ast.Expression,System.Type,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see>, given an operand and implementing method, by calling the appropriate factory method.
            </summary>
            <param name="unaryType">The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"></see> that specifies the type of unary operation.</param>
            <param name="operand">An <see cref="T:Microsoft.Scripting.Ast.Expression"></see> that represents the operand.</param>
            <param name="type">The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"></see> that specifies the type to be converted to (pass null if not applicable).</param>
            <param name="method">The <see cref="T:System.Reflection.MethodInfo"></see> that represents the implementing method.</param>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that results from calling the appropriate factory method.</returns>
            <exception cref="T:System.ArgumentException">Thrown when <paramref name="unaryType"/> does not correspond to a unary expression.</exception> 
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="operand"/> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Negate(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that represents an arithmetic negation operation.
            </summary>
            <param name="expression">An <see cref="T:Microsoft.Scripting.Ast.Expression"></see> to set the <see cref="P:UnaryExpression.Operand"></see> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that has the <see cref="P:Expression.NodeType"></see> property equal to <see cref="P:ExpressionType.Negate"></see> and the <see cref="P:UnaryExpression.Operand"></see> properties set to the specified value.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="expression"/> is null.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when the unary minus operator is not defined for <see cref="P:Expression.Type"></see></exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Negate(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that represents an arithmetic negation operation.
            </summary>
            <param name="expression">An <see cref="T:Microsoft.Scripting.Ast.Expression"></see> to set the <see cref="P:UnaryExpression.Operand"></see> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"></see> to set the <see cref="P:UnaryExpression.Method"></see> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that has the <see cref="P:Expression.NodeType"></see> property equal to <see cref="P:ExpressionType.Negate"></see> and the <see cref="P:UnaryExpression.Operand"></see> and <see cref="P:UnaryExpression.Method"></see> properties set to the specified value.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="expression"/> is null.</exception>
            <exception cref="T:System.ArgumentException">Thrown when <paramref name="method"/> is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly one argument.</exception>
            <exception cref="T:System.InvalidOperationException">Thown when <paramref name="method"/> is null and the unary minus operator is not defined for expression.Type or expression.Type (or its corresponding non-nullable type if it is a nullable value type) is not assignable to the argument type of the method represented by method.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.UnaryPlus(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that represents a unary plus operation.
            </summary>
            <param name="expression">An <see cref="T:Microsoft.Scripting.Ast.Expression"></see> to set the <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Operand"></see> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"></see> property equal to <see cref="F:Microsoft.Scripting.Ast.ExpressionType.UnaryPlus"></see> and the <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Operand"></see> property set to the specified value.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="expression"/> is null.</exception>
            <exception cref="T:System.InvalidOperationException">Thown when the unary minus operator is not defined for expression.Type.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.UnaryPlus(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that represents a unary plus operation.
            </summary>
            <param name="expression">An <see cref="T:Microsoft.Scripting.Ast.Expression"></see> to set the <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Operand"></see> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"></see> to set the <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Method"></see> property equal to.</param>
            <returns>A <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"></see> that has the <see cref="P:Microsoft.Scripting.Ast.Expression.NodeType"></see> property equal to <see cref="F:Microsoft.Scripting.Ast.ExpressionType.UnaryPlus"></see> and the <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Operand"></see> and <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Method"></see>property set to the specified value.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="expression"/> is null.</exception>
            <exception cref="T:System.ArgumentException">Thrown when <paramref name="method"/> is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly one argument.</exception>
            <exception cref="T:System.InvalidOperationException">Thown when <paramref name="method"/> is null and the unary minus operator is not defined for expression.Type or expression.Type (or its corresponding non-nullable type if it is a nullable value type) is not assignable to the argument type of the method represented by method.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NegateChecked(Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents an arithmetic negation operation that has overflow checking.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.NegateChecked" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property set to the specified value.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
              Thrown when <paramref name="expression" /> is null.</exception>
            <exception cref="T:System.InvalidOperationException">Thrown when the unary minus operator is not defined for <paramref name="expression" />.Type.</exception> 
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.NegateChecked(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents an arithmetic negation operation that has overflow checking. The implementing method can be specified.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.NegateChecked" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> and <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> properties set to the specified values.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="method" /> is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly one argument.</exception>
            <exception cref="T:System.InvalidOperationException">
            <paramref name="method" /> is null and the unary minus operator is not defined for <paramref name="expression" />.Type.-or-<paramref name="expression" />.Type (or its corresponding non-nullable type if it is a nullable value type) is not assignable to the argument type of the method represented by <paramref name="method" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Not(Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a bitwise complement operation.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Not" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property set to the specified value.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> is null.</exception>
            <exception cref="T:System.InvalidOperationException">The unary not operator is not defined for <paramref name="expression" />.Type.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Not(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a bitwise complement operation. The implementing method can be specified.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Not" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> and <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> properties set to the specified values.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="method" /> is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly one argument.</exception>
            <exception cref="T:System.InvalidOperationException">
            <paramref name="method" /> is null and the unary not operator is not defined for <paramref name="expression" />.Type.-or-<paramref name="expression" />.Type (or its corresponding non-nullable type if it is a nullable value type) is not assignable to the argument type of the method represented by <paramref name="method" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.IsFalse(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Returns whether the expression evaluates to false.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/> to evaluate.</param>
            <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.IsFalse(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
             <summary>
             Returns whether the expression evaluates to false.
             </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/> to evaluate.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</param>
             <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.IsTrue(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Returns whether the expression evaluates to true.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/> to evaluate.</param>
            <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.IsTrue(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
             <summary>
             Returns whether the expression evaluates to true.
             </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/> to evaluate.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</param>
             <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.OnesComplement(Microsoft.Scripting.Ast.Expression)">
             <summary>
             Returns the expression representing the ones complement.
             </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/>.</param>
             <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.OnesComplement(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Returns the expression representing the ones complement.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/>.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</param>
            <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.TypeAs(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents an explicit reference or boxing conversion where null is supplied if the conversion fails.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.TypeAs" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> and <see cref="P:System.Linq.Expressions.Expression.Type" /> properties set to the specified values.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <param name="type">A <see cref="T:System.Type" /> to set the <see cref="P:System.Linq.Expressions.Expression.Type" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> or <paramref name="type" /> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Unbox(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents an explicit unboxing.</summary>
            </summary>     
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"/> to unbox.</param>
            <param name="type">The new <see cref="T:System.Type"/> of the expression.</param>
            <returns>An instance of <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/>.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Convert(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a conversion operation.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Convert" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> and <see cref="P:System.Linq.Expressions.Expression.Type" /> properties set to the specified values.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <param name="type">A <see cref="T:System.Type" /> to set the <see cref="P:System.Linq.Expressions.Expression.Type" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> or <paramref name="type" /> is null.</exception>
            <exception cref="T:System.InvalidOperationException">No conversion operator is defined between <paramref name="expression" />.Type and <paramref name="type" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Convert(Microsoft.Scripting.Ast.Expression,System.Type,System.Reflection.MethodInfo)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a conversion operation for which the implementing method is specified.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Convert" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" />, <see cref="P:System.Linq.Expressions.Expression.Type" />, and <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> properties set to the specified values.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <param name="type">A <see cref="T:System.Type" /> to set the <see cref="P:System.Linq.Expressions.Expression.Type" /> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> or <paramref name="type" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="method" /> is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly one argument.</exception>
            <exception cref="T:System.Reflection.AmbiguousMatchException">More than one method that matches the <paramref name="method" /> description was found.</exception>
            <exception cref="T:System.InvalidOperationException">No conversion operator is defined between <paramref name="expression" />.Type and <paramref name="type" />.-or-<paramref name="expression" />.Type is not assignable to the argument type of the method represented by <paramref name="method" />.-or-The return type of the method represented by <paramref name="method" /> is not assignable to <paramref name="type" />.-or-<paramref name="expression" />.Type or <paramref name="type" /> is a nullable value type and the corresponding non-nullable value type does not equal the argument type or the return type, respectively, of the method represented by <paramref name="method" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ConvertChecked(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a conversion operation that throws an exception if the target type is overflowed.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.ConvertChecked" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> and <see cref="P:System.Linq.Expressions.Expression.Type" /> properties set to the specified values.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <param name="type">A <see cref="T:System.Type" /> to set the <see cref="P:System.Linq.Expressions.Expression.Type" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> or <paramref name="type" /> is null.</exception>
            <exception cref="T:System.InvalidOperationException">No conversion operator is defined between <paramref name="expression" />.Type and <paramref name="type" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ConvertChecked(Microsoft.Scripting.Ast.Expression,System.Type,System.Reflection.MethodInfo)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a conversion operation that throws an exception if the target type is overflowed and for which the implementing method is specified.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.ConvertChecked" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" />, <see cref="P:System.Linq.Expressions.Expression.Type" />, and <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> properties set to the specified values.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <param name="type">A <see cref="T:System.Type" /> to set the <see cref="P:System.Linq.Expressions.Expression.Type" /> property equal to.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Method" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> or <paramref name="type" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="method" /> is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly one argument.</exception>
            <exception cref="T:System.Reflection.AmbiguousMatchException">More than one method that matches the <paramref name="method" /> description was found.</exception>
            <exception cref="T:System.InvalidOperationException">No conversion operator is defined between <paramref name="expression" />.Type and <paramref name="type" />.-or-<paramref name="expression" />.Type is not assignable to the argument type of the method represented by <paramref name="method" />.-or-The return type of the method represented by <paramref name="method" /> is not assignable to <paramref name="type" />.-or-<paramref name="expression" />.Type or <paramref name="type" /> is a nullable value type and the corresponding non-nullable value type does not equal the argument type or the return type, respectively, of the method represented by <paramref name="method" />.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.ArrayLength(Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents getting the length of a one-dimensional array.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.ArrayLength" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to <paramref name="array" />.</returns>
            <param name="array">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array" /> is null.</exception>
            <exception cref="T:System.ArgumentException">
            <paramref name="array" />.Type does not represent an array type.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Quote(Microsoft.Scripting.Ast.Expression)">
            <summary>Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents an expression that has a constant value of type <see cref="T:System.Linq.Expressions.Expression" />.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression" /> that has the <see cref="P:System.Linq.Expressions.Expression.NodeType" /> property equal to <see cref="F:System.Linq.Expressions.ExpressionType.Quote" /> and the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property set to the specified value.</returns>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression" /> to set the <see cref="P:System.Linq.Expressions.UnaryExpression.Operand" /> property equal to.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="expression" /> is null.</exception>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Rethrow">
            <summary>
            Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a rethrowing of an exception.
            </summary>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents a rethrowing of an exception.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Rethrow(System.Type)">
             <summary>
             Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a rethrowing of an exception with a given type.
             </summary>
            <param name="type">The new <see cref="T:System.Type" /> of the expression.</param>
             <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents a rethrowing of an exception.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Throw(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a throwing of an exception.
            </summary>
            <param name="value">An <see cref="T:System.Linq.Expressions.Expression" />.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the exception.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Throw(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents a throwing of a value with a given type.
            </summary>
            <param name="value">An <see cref="T:System.Linq.Expressions.Expression" />.</param>
            <param name="type">The new <see cref="T:System.Type" /> of the expression.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the exception.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Increment(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents the incrementing of the expression by 1.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to increment.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the incremented expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Increment(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
             <summary>
             Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents the incrementing of the expression by 1.
             </summary>
             <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to increment.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> that represents the implementing method.</param>
             <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the incremented expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Decrement(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents the decrementing of the expression by 1.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to decrement.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the decremented expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.Decrement(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
             <summary>
             Creates a <see cref="T:System.Linq.Expressions.UnaryExpression" /> that represents the decrementing of the expression by 1.
             </summary>
             <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to decrement.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> that represents the implementing method.</param>
             <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the decremented expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PreIncrementAssign(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that increments the expression by 1
            and assigns the result back to the expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PreIncrementAssign(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that increments the expression by 1
            and assigns the result back to the expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PreDecrementAssign(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that decrements the expression by 1
            and assigns the result back to the expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PreDecrementAssign(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that decrements the expression by 1
            and assigns the result back to the expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PostIncrementAssign(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that represents the assignment of the expression 
            followed by a subsequent increment by 1 of the original expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PostIncrementAssign(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that represents the assignment of the expression 
            followed by a subsequent increment by 1 of the original expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PostDecrementAssign(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that represents the assignment of the expression 
            followed by a subsequent decrement by 1 of the original expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression.PostDecrementAssign(Microsoft.Scripting.Ast.Expression,System.Reflection.MethodInfo)">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.UnaryExpression"/> that represents the assignment of the expression 
            followed by a subsequent decrement by 1 of the original expression.
            </summary>
            <param name="expression">An <see cref="T:System.Linq.Expressions.Expression"></see> to apply the operations on.</param>
            <param name="method">A <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</param>
            <returns>A <see cref="T:System.Linq.Expressions.UnaryExpression"/> that represents the resultant expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Expression.NodeType">
            <summary>
            The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the <see cref="T:Microsoft.Scripting.Ast.Expression"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Expression.Type">
            <summary>
            The <see cref="P:Microsoft.Scripting.Ast.Expression.Type"/> of the value represented by this <see cref="T:Microsoft.Scripting.Ast.Expression"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Expression.CanReduce">
            <summary>
            Indicates that the node can be reduced to a simpler node. If this 
            returns true, Reduce() can be called to produce the reduced form.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Expression.DebugView">
            <summary>
            Creates a <see cref="T:System.String"/> representation of the Expression.
            </summary>
            <returns>A <see cref="T:System.String"/> representation of the Expression.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Ast.IArgumentProvider">
            <summary>
            Provides an internal interface for accessing the arguments that multiple tree
            nodes (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression,
            and InexExpression).
            
            This enables two optimizations which reduce the size of the trees.  The first is it enables
            the nodes to hold onto an IList of T instead of a ReadOnlyCollection.  This saves the cost
            of allocating the ReadOnlyCollection for each node.  The second is that it enables specialized
            subclasses to be created which hold onto a specific number of arguments.  For example Block2,
            Block3, Block4.  These nodes can therefore avoid allocating both a ReadOnlyCollection and an
            array for storing their elements saving 32 bytes per node.
            
            Meanwhile the nodes can continue to expose the original LINQ properties of ReadOnlyCollections.  They
            do this by re-using 1 field for storing both the array or an element that would normally be stored
            in the array.  
            
            For the array case the collection is typed to IList of T instead of ReadOnlyCollection of T.
            When the node is initially constructed it is an array.  When the compiler accesses the members it
            uses this interface.  If a user accesses the members the array is promoted to a ReadOnlyCollection.
            
            For the object case we store the 1st argument in a field typed to object and when the node is initially
            constructed this holds directly onto the Expression.  When the compiler accesses the members
            it again uses this interface and the accessor for the 1st argument uses Expression.ReturnObject to
            return the object which handles the Expression or ReadOnlyCollection case.  When the user accesses
            the ReadOnlyCollection then the object field is updated to hold directly onto the ReadOnlyCollection.
            
            It is important that the Expressions consistently return the same ReadOnlyCollection otherwise the
            re-writer will be broken and it would be a breaking change from LINQ v1.  The problem is that currently
            users can rely on object identity to tell if the node has changed.  Storing the readonly collection in 
            an overloaded field enables us to both reduce memory usage as well as maintain compatibility and an 
            easy to use external API.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ListArgumentProvider">
            <summary>
            Provides a wrapper around an IArgumentProvider which exposes the argument providers
            members out as an IList of Expression.  This is used to avoid allocating an array
            which needs to be stored inside of a ReadOnlyCollection.  Instead this type has
            the same amount of overhead as an array without duplicating the storage of the
            elements.  This ensures that internally we can avoid creating and copying arrays
            while users of the Expression trees also don't pay a size penalty for this internal
            optimization.  See IArgumentProvider for more general information on the Expression
            tree optimizations being used here.
            </summary>
        </member>
        <member name="T:System.Dynamic.UnaryOperationBinder">
            <summary>
            Represents the unary dynamic operation at the call site, providing the binding semantic and the details about the operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.UnaryOperationBinder.#ctor(Microsoft.Scripting.Ast.ExpressionType)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Dynamic.BinaryOperationBinder"/> class.
            </summary>
            <param name="operation">The unary operation kind.</param>
        </member>
        <member name="M:System.Dynamic.UnaryOperationBinder.FallbackUnaryOperation(System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the unary dynamic operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic unary operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.UnaryOperationBinder.FallbackUnaryOperation(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject)">
            <summary>
            Performs the binding of the unary dynamic operation if the target dynamic object cannot bind.
            </summary>
            <param name="target">The target of the dynamic unary operation.</param>
            <param name="errorSuggestion">The binding result in case the binding fails, or null.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="M:System.Dynamic.UnaryOperationBinder.Bind(System.Dynamic.DynamicMetaObject,System.Dynamic.DynamicMetaObject[])">
            <summary>
            Performs the binding of the dynamic unary operation.
            </summary>
            <param name="target">The target of the dynamic operation.</param>
            <param name="args">An array of arguments of the dynamic operation.</param>
            <returns>The <see cref="T:System.Dynamic.DynamicMetaObject"/> representing the result of the binding.</returns>
        </member>
        <member name="P:System.Dynamic.UnaryOperationBinder.ReturnType">
            <summary>
            The result type of the operation.
            </summary>
        </member>
        <member name="P:System.Dynamic.UnaryOperationBinder.Operation">
            <summary>
            The unary operation kind.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionStringBuilder.ExpressionToString(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Output a given expression tree to a string.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionStringBuilder.MemberBindingToString(Microsoft.Scripting.Ast.MemberBinding)">
            <summary>
            Output a given member binding to a string.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ExpressionStringBuilder.ElementInitBindingToString(Microsoft.Scripting.Ast.ElementInit)">
            <summary>
            Output a given ElementInit to a string.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.BoundConstants">
            <summary>
            This type tracks "runtime" constants--live objects that appear in
            ConstantExpression nodes and must be bound to the delegate.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.BoundConstants._values">
            <summary>
            The list of constants in the order they appear in the constant array
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.BoundConstants._indexes">
            <summary>
            The index of each constant in the constant array
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.BoundConstants._references">
            <summary>
            Each constant referenced within this lambda, and how often it was referenced
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.BoundConstants._cache">
            <summary>
            IL locals for storing frequently used constants
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.BoundConstants.AddReference(System.Object,System.Type)">
            <summary>
            Called by VariableBinder. Adds the constant to the list (if needed)
            and increases the reference count by one
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.BoundConstants.EmitConstant(Microsoft.Scripting.Ast.Compiler.LambdaCompiler,System.Object,System.Type)">
            <summary>
            Emits a live object as a constant
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.BoundConstants.EmitCacheConstants(Microsoft.Scripting.Ast.Compiler.LambdaCompiler)">
            <summary>
            Emit code to cache frequently used constants into IL locals,
            instead of pulling them out of the array each time
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.BoundConstants.TypedConstant">
            <summary>
            Constants can emit themselves as different types
            For caching purposes, we need to treat each distinct Type as a
            seperate thing to cache. (If we have to cast it on the way out, it
            ends up using a JIT temp and defeats the purpose of caching the
            value in a local)
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.DebugInfoExpression">
            <summary>
            Emits or clears a sequence point for debug information.
            
            This allows the debugger to highlight the correct source code when
            debugging.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.DebugInfoExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.DebugInfoExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.StartLine">
            <summary>
            Gets the start line of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.StartColumn">
            <summary>
            Gets the start column of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.EndLine">
            <summary>
            Gets the end line of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.EndColumn">
            <summary>
            Gets the end column of this <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.Document">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.SymbolDocumentInfo"/> that represents the source file.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DebugInfoExpression.IsClear">
            <summary>
            Gets the value to indicate if the <see cref="T:Microsoft.Scripting.Ast.DebugInfoExpression"/> is for clearing a sequence point.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.SymbolDocumentInfo">
            <summary>
            Stores information needed to emit debugging symbol information for a
            source file, in particular the file name and unique language identifier.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SymbolDocumentInfo.FileName">
            <summary>
            The source file name.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SymbolDocumentInfo.Language">
            <summary>
            Returns the language's unique identifier, if any.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SymbolDocumentInfo.LanguageVendor">
            <summary>
            Returns the language vendor's unique identifier, if any.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SymbolDocumentInfo.DocumentType">
            <summary>
            Returns the document type's unique identifier, if any.
            Defaults to the guid for a text file.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.DelegateHelpers.MakeDelegateType(System.Type[])">
            <summary>
            Finds a delegate type using the types in the array. 
            We use the cache to avoid copying the array, and to cache the
            created delegate type
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.DelegateHelpers.MakeCallSiteDelegate(System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Scripting.Ast.Expression},System.Type)">
            <summary>
            Finds a delegate type for a CallSite using the types in the ReadOnlyCollection of Expression. 
            
            We take the readonly collection of Expression explicitly to avoid allocating memory (an array 
            of types) on lookup of delegate types.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.DelegateHelpers.MakeDeferredSiteDelegate(System.Dynamic.DynamicMetaObject[],System.Type)">
            <summary>
            Finds a delegate type for a CallSite using the MetaObject array. 
            
            We take the array of MetaObject explicitly to avoid allocating memory (an array of types) on
            lookup of delegate types.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.DelegateHelpers.MakeNewDelegate(System.Type[])">
            <summary>
            Creates a new delegate, or uses a func/action
            Note: this method does not cache
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.GotoExpressionKind">
            <summary>
            Specifies what kind of jump this <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> represents.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.GotoExpressionKind.Goto">
            <summary>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> that represents a jump to some location.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.GotoExpressionKind.Return">
            <summary>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> that represents a return statement.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.GotoExpressionKind.Break">
            <summary>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> that represents a break statement.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.GotoExpressionKind.Continue">
            <summary>
            A <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/> that represents a continue statement.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.GotoExpression">
            <summary>
            Represents an unconditional jump. This includes return statements, break and continue statements, and other jumps.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.GotoExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.GotoExpression.Update(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="target">The <see cref="P:Microsoft.Scripting.Ast.GotoExpression.Target"/> property of the result.</param>
            <param name="value">The <see cref="P:Microsoft.Scripting.Ast.GotoExpression.Value"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.GotoExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.GotoExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.GotoExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.GotoExpression.Value">
            <summary>
            The value passed to the target, or null if the target is of type
            System.Void.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.GotoExpression.Target">
            <summary>
            The target label where this node jumps to.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.GotoExpression.Kind">
            <summary>
            The kind of the goto. For information purposes only.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.LabelInfo">
            <summary>
            Contains compiler state corresponding to a LabelTarget
            See also LabelScopeInfo.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Compiler.LabelInfo.CanBranch">
            <summary>
            Indicates if it is legal to emit a "branch" instruction based on
            currently available information. Call the Reference method before 
            using this property.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Compiler.LabelScopeInfo.CanJumpInto">
            <summary>
            Returns true if we can jump into this node
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator">
            <summary>
            Wraps ILGenerator with code that tracks the current IL offset as instructions are emitted into the IL stream.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.DynamicExpression">
            <summary>
            Represents a dynamic operation.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.DynamicExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.DynamicExpression.Rewrite(Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Makes a copy of this node replacing the args with the provided values.  The 
            number of the args needs to match the number of the current block.
            
            This helper is provided to allow re-writing of nodes to not depend on the specific optimized
            subclass of DynamicExpression which is being used. 
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.DynamicExpression.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="arguments">The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DynamicExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.DynamicExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DynamicExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DynamicExpression.Binder">
            <summary>
            Gets the <see cref="T:System.Runtime.CompilerServices.CallSiteBinder"/>, which determines the runtime behavior of the
            dynamic site.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DynamicExpression.DelegateType">
            <summary>
            Gets the type of the delegate used by the <see cref="T:System.Runtime.CompilerServices.CallSite"/>.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DynamicExpression.Arguments">
            <summary>
            Gets the arguments to the dynamic operation.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.BinaryExpression">
            <summary>
            Represents an expression that has a binary operator.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.BinaryExpression.Update(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.LambdaExpression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="left">The <see cref="P:Microsoft.Scripting.Ast.BinaryExpression.Left"/> property of the result.</param>
            <param name="conversion">The <see cref="P:Microsoft.Scripting.Ast.BinaryExpression.Conversion"/> property of the result.</param>
            <param name="right">The <see cref="P:Microsoft.Scripting.Ast.BinaryExpression.Right"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.BinaryExpression.Reduce">
            <summary>
            Reduces the binary expression node to a simpler expression. 
            If CanReduce returns true, this should return a valid expression.
            This method is allowed to return another node which itself 
            must be reduced.
            </summary>
            <returns>The reduced expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.BinaryExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BinaryExpression.CanReduce">
            <summary>
            Gets a value that indicates whether the expression tree node can be reduced. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BinaryExpression.Right">
            <summary>
            Gets the right operand of the binary operation.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BinaryExpression.Left">
            <summary>
            Gets the left operand of the binary operation.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BinaryExpression.Method">
            <summary>
            Gets the implementing method for the binary operation.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BinaryExpression.Conversion">
            <summary>
            Gets the type conversion function that is used by a coalescing or compound assignment operation.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BinaryExpression.IsLifted">
            <summary>
            Gets a value that indicates whether the expression tree node represents a lifted call to an operator.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BinaryExpression.IsLiftedToNull">
            <summary>
            Gets a value that indicates whether the expression tree node represents a lifted call to an operator whose return type is lifted to a nullable type.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.BlockExpression">
            <summary>
            Represents a block that contains a sequence of expressions where variables can be defined.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.BlockExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.BlockExpression.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression},System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="variables">The <see cref="P:Microsoft.Scripting.Ast.BlockExpression.Variables"/> property of the result.</param>
            <param name="expressions">The <see cref="P:Microsoft.Scripting.Ast.BlockExpression.Expressions"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.BlockExpression.Rewrite(System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Scripting.Ast.ParameterExpression},Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Makes a copy of this node replacing the parameters/args with the provided values.  The 
            shape of the parameters/args needs to match the shape of the current block - in other
            words there should be the same # of parameters and args.
            
            parameters can be null in which case the existing parameters are used.
            
            This helper is provided to allow re-writing of nodes to not depend on the specific optimized
            subclass of BlockExpression which is being used. 
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.BlockExpression.ReturnReadOnlyExpressions(Microsoft.Scripting.Ast.BlockExpression,System.Object@)">
            <summary>
            Helper used for ensuring we only return 1 instance of a ReadOnlyCollection of T.
            
            This is similar to the ReturnReadOnly which only takes a single argument. This version
            supports nodes which hold onto 5 Expressions and puts all of the arguments into the
            ReadOnlyCollection.
            
            Ultimately this means if we create the readonly collection we will be slightly more wasteful as we'll
            have a readonly collection + some fields in the type.  The DLR internally avoids accessing anything
            which would force the readonly collection to be created.
            
            This is used by BlockExpression5 and MethodCallExpression5.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BlockExpression.Expressions">
            <summary>
            Gets the expressions in this block.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BlockExpression.Variables">
            <summary>
            Gets the variables defined in this block.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BlockExpression.Result">
            <summary>
            Gets the last expression in this block.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BlockExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.BlockExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.BlockExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Ast.BlockExpressionList">
            <summary>
            Provides a wrapper around an IArgumentProvider which exposes the argument providers
            members out as an IList of Expression.  This is used to avoid allocating an array
            which needs to be stored inside of a ReadOnlyCollection.  Instead this type has
            the same amount of overhead as an array without duplicating the storage of the
            elements.  This ensures that internally we can avoid creating and copying arrays
            while users of the Expression trees also don't pay a size penalty for this internal
            optimization.  See IArgumentProvider for more general information on the Expression
            tree optimizations being used here.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.CatchBlock">
            <summary>
            Represents a catch statement in a try block. 
            This must have the same return type (i.e., the type of <see cref="P:CatchBlock.Body"/>) as the try block it is associated with.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.CatchBlock.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. 
            </summary>
            <returns>A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.CatchBlock.Update(Microsoft.Scripting.Ast.ParameterExpression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="variable">The <see cref="P:Microsoft.Scripting.Ast.CatchBlock.Variable"/> property of the result.</param>
            <param name="filter">The <see cref="P:Microsoft.Scripting.Ast.CatchBlock.Filter"/> property of the result.</param>
            <param name="body">The <see cref="P:Microsoft.Scripting.Ast.CatchBlock.Body"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.CatchBlock.Variable">
            <summary>
            Gets a reference to the <see cref="T:System.Exception"/> object caught by this handler.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.CatchBlock.Test">
            <summary>
            Gets the type of <see cref="T:System.Exception"/> this handler catches.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.CatchBlock.Body">
            <summary>
            Gets the body of the catch block.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.CatchBlock.Filter">
            <summary>
            Gets the body of the <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>'s filter.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ConditionalExpression">
            <summary>
            Represents an expression that has a conditional operator.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ConditionalExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ConditionalExpression.Update(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="test">The <see cref="P:Microsoft.Scripting.Ast.ConditionalExpression.Test"/> property of the result.</param>
            <param name="ifTrue">The <see cref="P:Microsoft.Scripting.Ast.ConditionalExpression.IfTrue"/> property of the result.</param>
            <param name="ifFalse">The <see cref="P:Microsoft.Scripting.Ast.ConditionalExpression.IfFalse"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConditionalExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConditionalExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.ConditionalExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConditionalExpression.Test">
            <summary>
            Gets the test of the conditional operation.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConditionalExpression.IfTrue">
            <summary>
            Gets the expression to execute if the test evaluates to true.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConditionalExpression.IfFalse">
            <summary>
            Gets the expression to execute if the test evaluates to false.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ConstantExpression">
            <summary>
            Represents an expression that has a constant value.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ConstantExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConstantExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.ConstantExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConstantExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ConstantExpression.Value">
            <summary>
            Gets the value of the constant expression.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.DefaultExpression">
            <summary>
            Represents the default value of a type or an empty expression.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.DefaultExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DefaultExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.DefaultExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.DefaultExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ElementInit">
            <summary>
            Represents the initialization of a list.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ElementInit.ToString">
            <summary>
            Creates a <see cref="T:System.String"/> representation of the node.
            </summary>
            <returns>A <see cref="T:System.String"/> representation of the node.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ElementInit.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="arguments">The <see cref="P:Microsoft.Scripting.Ast.ElementInit.Arguments"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ElementInit.AddMethod">
            <summary>
            Gets the <see cref="T:System.Reflection.MethodInfo"/> used to add elements to the object.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ElementInit.Arguments">
            <summary>
            Gets the list of elements to be added to the object.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ExpressionType">
            <summary>
            Describes the node types for the nodes of an expression tree.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Add">
            <summary>
            A node that represents arithmetic addition without overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.AddChecked">
            <summary>
            A node that represents arithmetic addition with overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.And">
            <summary>
            A node that represents a bitwise AND operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.AndAlso">
            <summary>
            A node that represents a short-circuiting conditional AND operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.ArrayLength">
            <summary>
            A node that represents getting the length of a one-dimensional array.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.ArrayIndex">
            <summary>
            A node that represents indexing into a one-dimensional array.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Call">
            <summary>
            A node that represents represents a method call.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Coalesce">
            <summary>
            A node that represents a null coalescing operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Conditional">
            <summary>
            A node that represents a conditional operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Constant">
            <summary>
            A node that represents an expression that has a constant value.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Convert">
            <summary>
            A node that represents a cast or conversion operation. If the operation is a numeric conversion, it overflows silently if the converted value does not fit the target type.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.ConvertChecked">
            <summary>
            A node that represents a cast or conversion operation. If the operation is a numeric conversion, an exception is thrown if the converted value does not fit the target type.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Divide">
            <summary>
            A node that represents arithmetic division.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Equal">
            <summary>
            A node that represents an equality comparison.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.ExclusiveOr">
            <summary>
            A node that represents a bitwise XOR operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.GreaterThan">
            <summary>
            A node that represents a "greater than" numeric comparison.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.GreaterThanOrEqual">
            <summary>
            A node that represents a "greater than or equal" numeric comparison.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Invoke">
            <summary>
            A node that represents applying a delegate or lambda expression to a list of argument expressions.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Lambda">
            <summary>
            A node that represents a lambda expression.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.LeftShift">
            <summary>
            A node that represents a bitwise left-shift operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.LessThan">
            <summary>
            A node that represents a "less than" numeric comparison.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.LessThanOrEqual">
            <summary>
            A node that represents a "less than or equal" numeric comparison.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.ListInit">
            <summary>
            A node that represents creating a new IEnumerable object and initializing it from a list of elements.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.MemberAccess">
            <summary>
            A node that represents reading from a field or property.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.MemberInit">
            <summary>
            A node that represents creating a new object and initializing one or more of its members.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Modulo">
            <summary>
            A node that represents an arithmetic remainder operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Multiply">
            <summary>
            A node that represents arithmetic multiplication without overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.MultiplyChecked">
            <summary>
            A node that represents arithmetic multiplication with overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Negate">
            <summary>
            A node that represents an arithmetic negation operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.UnaryPlus">
            <summary>
            A node that represents a unary plus operation. The result of a predefined unary plus operation is simply the value of the operand, but user-defined implementations may have non-trivial results.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.NegateChecked">
            <summary>
            A node that represents an arithmetic negation operation that has overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.New">
            <summary>
            A node that represents calling a constructor to create a new object.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.NewArrayInit">
            <summary>
            A node that represents creating a new one-dimensional array and initializing it from a list of elements.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.NewArrayBounds">
            <summary>
            A node that represents creating a new array where the bounds for each dimension are specified.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Not">
            <summary>
            A node that represents a bitwise complement operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.NotEqual">
            <summary>
            A node that represents an inequality comparison.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Or">
            <summary>
            A node that represents a bitwise OR operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.OrElse">
            <summary>
            A node that represents a short-circuiting conditional OR operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Parameter">
            <summary>
            A node that represents a reference to a parameter or variable defined in the context of the expression.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Power">
            <summary>
            A node that represents raising a number to a power.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Quote">
            <summary>
            A node that represents an expression that has a constant value of type Expression. A Quote node can contain references to parameters defined in the context of the expression it represents.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.RightShift">
            <summary>
            A node that represents a bitwise right-shift operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Subtract">
            <summary>
            A node that represents arithmetic subtraction without overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.SubtractChecked">
            <summary>
            A node that represents arithmetic subtraction with overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.TypeAs">
            <summary>
            A node that represents an explicit reference or boxing conversion where null reference (Nothing in Visual Basic) is supplied if the conversion fails.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.TypeIs">
            <summary>
            A node that represents a type test.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Assign">
            <summary>
            A node that represents an assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Block">
            <summary>
            A node that represents a block of expressions.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.DebugInfo">
            <summary>
            A node that represents a debugging information.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Decrement">
            <summary>
            A node that represents a unary decrement.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Dynamic">
            <summary>
            A node that represents a dynamic operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Default">
            <summary>
            A node that represents a default value.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Extension">
            <summary>
            A node that represents an extension expression.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Goto">
            <summary>
            A node that represents a goto.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Increment">
            <summary>
            A node that represents a unary increment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Index">
            <summary>
            A node that represents an index operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Label">
            <summary>
            A node that represents a label.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.RuntimeVariables">
            <summary>
            A node that represents a list of runtime variables.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Loop">
            <summary>
            A node that represents a loop.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Switch">
            <summary>
            A node that represents a switch operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Throw">
            <summary>
            A node that represents a throwing of an exception.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Try">
            <summary>
            A node that represents a try-catch expression.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.Unbox">
            <summary>
            A node that represents an unbox value type operation.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.AddAssign">
            <summary>
            A node that represents an arithmetic addition compound assignment without overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.AndAssign">
            <summary>
            A node that represents a bitwise AND compound assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.DivideAssign">
            <summary>
            A node that represents an arithmetic division compound assignment .
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.ExclusiveOrAssign">
            <summary>
            A node that represents a bitwise XOR compound assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.LeftShiftAssign">
            <summary>
            A node that represents a bitwise left-shift compound assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.ModuloAssign">
            <summary>
            A node that represents an arithmetic remainder compound assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.MultiplyAssign">
            <summary>
            A node that represents arithmetic multiplication compound assignment without overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.OrAssign">
            <summary>
            A node that represents a bitwise OR compound assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.PowerAssign">
            <summary>
            A node that represents raising a number to a power compound assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.RightShiftAssign">
            <summary>
            A node that represents a bitwise right-shift compound assignment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.SubtractAssign">
            <summary>
            A node that represents arithmetic subtraction compound assignment without overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.AddAssignChecked">
            <summary>
            A node that represents an arithmetic addition compound assignment with overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.MultiplyAssignChecked">
            <summary>
            A node that represents arithmetic multiplication compound assignment with overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.SubtractAssignChecked">
            <summary>
            A node that represents arithmetic subtraction compound assignment with overflow checking.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.PreIncrementAssign">
            <summary>
            A node that represents an unary prefix increment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.PreDecrementAssign">
            <summary>
            A node that represents an unary prefix decrement.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.PostIncrementAssign">
            <summary>
            A node that represents an unary postfix increment.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.PostDecrementAssign">
            <summary>
            A node that represents an unary postfix decrement.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.TypeEqual">
            <summary>
            A node that represents a exact type test.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.OnesComplement">
            <summary>
            A node that represents a ones complement.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.IsTrue">
            <summary>
            A node that represents a true condition value.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.ExpressionType.IsFalse">
            <summary>
            A node that represents a false condition value.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.IndexExpression">
            <summary>
            Represents indexing a property or array.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.IndexExpression.Update(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="object">The <see cref="P:Microsoft.Scripting.Ast.IndexExpression.Object"/> property of the result.</param>
            <param name="arguments">The <see cref="P:Microsoft.Scripting.Ast.IndexExpression.Arguments"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.IndexExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.IndexExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.IndexExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.IndexExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.IndexExpression.Object">
            <summary>
            An object to index.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.IndexExpression.Indexer">
            <summary>
            Gets the <see cref="T:System.Reflection.PropertyInfo"/> for the property if the expression represents an indexed property, returns null otherwise.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.IndexExpression.Arguments">
            <summary>
            Gets the arguments to be used to index the property or array.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.InvocationExpression">
            <summary>
            Represents an expression that applies a delegate or lambda expression to a list of argument expressions.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.InvocationExpression.Update(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="expression">The <see cref="P:Microsoft.Scripting.Ast.InvocationExpression.Expression"/> property of the result.</param>
            <param name="arguments">The <see cref="P:Microsoft.Scripting.Ast.InvocationExpression.Arguments"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.InvocationExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.InvocationExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="P:Microsoft.Scripting.Ast.InvocationExpression.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.InvocationExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.InvocationExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.InvocationExpression.Expression">
            <summary>
            Gets the delegate or lambda expression to be applied.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.InvocationExpression.Arguments">
            <summary>
            Gets the arguments that the delegate or lambda expression is applied to.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.LabelTarget">
            <summary>
            Used to denote the target of a <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/>.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LabelTarget.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. 
            </summary>
            <returns>A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. </returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LabelTarget.Name">
            <summary>
            Gets the name of the label.
            </summary>
            <remarks>The label's name is provided for information purposes only.</remarks>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LabelTarget.Type">
            <summary>
            The type of value that is passed when jumping to the label
            (or System.Void if no value should be passed).
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.LabelExpression">
            <summary>
            Represents a label, which can be placed in any <see cref="T:Microsoft.Scripting.Ast.Expression"/> context. If
            it is jumped to, it will get the value provided by the corresponding
            <see cref="T:Microsoft.Scripting.Ast.GotoExpression"/>. Otherwise, it gets the value in <see cref="P:Microsoft.Scripting.Ast.LabelExpression.DefaultValue"/>. If the
            <see cref="P:Microsoft.Scripting.Ast.LabelExpression.Type"/> equals System.Void, no value should be provided.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LabelExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LabelExpression.Update(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="target">The <see cref="P:Microsoft.Scripting.Ast.LabelExpression.Target"/> property of the result.</param>
            <param name="defaultValue">The <see cref="P:Microsoft.Scripting.Ast.LabelExpression.DefaultValue"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LabelExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.LabelExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LabelExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LabelExpression.Target">
            <summary>
            The <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> which this label is associated with.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LabelExpression.DefaultValue">
            <summary>
            The value of the <see cref="T:Microsoft.Scripting.Ast.LabelExpression"/> when the label is reached through
            normal control flow (e.g. is not jumped to).
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.LambdaExpression">
            <summary>
            Creates a <see cref="T:Microsoft.Scripting.Ast.LambdaExpression"/> node.
            This captures a block of code that is similar to a .NET method body.
            </summary>
            <remarks>
            Lambda expressions take input through parameters and are expected to be fully bound. 
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LambdaExpression.Compile">
            <summary>
            Produces a delegate that represents the lambda expression.
            </summary>
            <returns>A delegate containing the compiled version of the lambda.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LambdaExpression.Compile(System.Runtime.CompilerServices.DebugInfoGenerator)">
            <summary>
            Produces a delegate that represents the lambda expression.
            </summary>
            <param name="debugInfoGenerator">Debugging information generator used by the compiler to mark sequence points and annotate local variables.</param>
            <returns>A delegate containing the compiled version of the lambda.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LambdaExpression.CompileToMethod(System.Reflection.Emit.MethodBuilder)">
            <summary>
            Compiles the lambda into a method definition.
            </summary>
            <param name="method">A <see cref="T:System.Reflection.Emit.MethodBuilder"/> which will be used to hold the lambda's IL.</param>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LambdaExpression.CompileToMethod(System.Reflection.Emit.MethodBuilder,System.Runtime.CompilerServices.DebugInfoGenerator)">
            <summary>
            Compiles the lambda into a method definition and custom debug information.
            </summary>
            <param name="method">A <see cref="T:System.Reflection.Emit.MethodBuilder"/> which will be used to hold the lambda's IL.</param>
            <param name="debugInfoGenerator">Debugging information generator used by the compiler to mark sequence points and annotate local variables.</param>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LambdaExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.LambdaExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LambdaExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LambdaExpression.Parameters">
            <summary>
            Gets the parameters of the lambda expression. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LambdaExpression.Name">
            <summary>
            Gets the name of the lambda expression. 
            </summary>
            <remarks>Used for debugging purposes.</remarks>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LambdaExpression.Body">
            <summary>
            Gets the body of the lambda expression. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LambdaExpression.ReturnType">
            <summary>
            Gets the return type of the lambda expression. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LambdaExpression.TailCall">
            <summary>
            Gets the value that indicates if the lambda expression will be compiled with
            tail call optimization. 
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Expression`1">
            <summary>
            Defines a <see cref="T:Microsoft.Scripting.Ast.Expression`1"/> node.
            This captures a block of code that is similar to a .NET method body.
            </summary>
            <typeparam name="TDelegate">The type of the delegate.</typeparam>
            <remarks>
            Lambda expressions take input through parameters and are expected to be fully bound. 
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression`1.Compile">
            <summary>
            Produces a delegate that represents the lambda expression.
            </summary>
            <returns>A delegate containing the compiled version of the lambda.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression`1.Compile(System.Runtime.CompilerServices.DebugInfoGenerator)">
            <summary>
            Produces a delegate that represents the lambda expression.
            </summary>
            <param name="debugInfoGenerator">Debugging information generator used by the compiler to mark sequence points and annotate local variables.</param>
            <returns>A delegate containing the compiled version of the lambda.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression`1.Update(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="body">The <see cref="P:Microsoft.Scripting.Ast.LambdaExpression.Body">Body</see> property of the result.</param>
            <param name="parameters">The <see cref="P:Microsoft.Scripting.Ast.LambdaExpression.Parameters">Parameters</see> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Expression`1.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ListInitExpression">
            <summary>
            Represents a constructor call that has a collection initializer.
            </summary>
            <remarks>
            Use the <see cref="M:ListInit"/> factory methods to create a ListInitExpression. 
            The value of the NodeType property of a ListInitExpression is ListInit. 
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ListInitExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ListInitExpression.Reduce">
            <summary>
            Reduces the binary expression node to a simpler expression. 
            If CanReduce returns true, this should return a valid expression.
            This method is allowed to return another node which itself 
            must be reduced.
            </summary>
            <returns>The reduced expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ListInitExpression.Update(Microsoft.Scripting.Ast.NewExpression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ElementInit})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="newExpression">The <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.NewExpression"/> property of the result.</param>
            <param name="initializers">The <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ListInitExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ListInitExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.ListInitExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ListInitExpression.CanReduce">
            <summary>
            Gets a value that indicates whether the expression tree node can be reduced. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ListInitExpression.NewExpression">
            <summary>
            Gets the expression that contains a call to the constructor of a collection type. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ListInitExpression.Initializers">
            <summary>
            Gets the element initializers that are used to initialize a collection. 
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.RuntimeVariablesExpression">
            <summary>
            An expression that provides runtime read/write access to variables.
            Needed to implement "eval" in some dynamic languages.
            Evaluates to an instance of <see cref="T:System.Collections.Generic.IList`1"/> when executed.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.RuntimeVariablesExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.RuntimeVariablesExpression.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ParameterExpression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="variables">The <see cref="P:Microsoft.Scripting.Ast.RuntimeVariablesExpression.Variables"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.RuntimeVariablesExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.RuntimeVariablesExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.RuntimeVariablesExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.RuntimeVariablesExpression.Variables">
            <summary>
            The variables or parameters to which to provide runtime access.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.LoopExpression">
            <summary>
            Represents an infinite loop. It can be exited with "break".
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LoopExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.LoopExpression.Update(Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.LabelTarget,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="breakLabel">The <see cref="P:Microsoft.Scripting.Ast.LoopExpression.BreakLabel"/> property of the result.</param>
            <param name="continueLabel">The <see cref="P:Microsoft.Scripting.Ast.LoopExpression.ContinueLabel"/> property of the result.</param>
            <param name="body">The <see cref="P:Microsoft.Scripting.Ast.LoopExpression.Body"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LoopExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.LoopExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LoopExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LoopExpression.Body">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.Expression"/> that is the body of the loop.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LoopExpression.BreakLabel">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that is used by the loop body as a break statement target.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.LoopExpression.ContinueLabel">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.LabelTarget"/> that is used by the loop body as a continue statement target.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MemberAssignment">
            <summary>
            Represents assignment to a member of an object.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MemberBinding">
            <summary>
            Provides the base class from which the classes that represent bindings that are used to initialize members of a newly created object derive.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberBinding.#ctor(Microsoft.Scripting.Ast.MemberBindingType,System.Reflection.MemberInfo)">
            <summary>
            Initializes an instance of <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/> class.
            </summary>
            <param name="type">The type of member binding.</param>
            <param name="member">The field or property to be initialized.</param>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberBinding.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. 
            </summary>
            <returns>A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. </returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberBinding.BindingType">
            <summary>
            Gets the type of binding that is represented.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberBinding.Member">
            <summary>
            Gets the field or property to be initialized.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberAssignment.Update(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="expression">The <see cref="P:Microsoft.Scripting.Ast.MemberAssignment.Expression"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberAssignment.Expression">
            <summary>
            Gets the <see cref="P:Microsoft.Scripting.Ast.MemberAssignment.Expression"/> which represents the object whose member is being assigned to.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MemberBindingType">
            <summary>
            Describes the binding types that are used in MemberInitExpression objects.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.MemberBindingType.Assignment">
            <summary>
            A binding that represents initializing a member with the value of an expression.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.MemberBindingType.MemberBinding">
            <summary>
            A binding that represents recursively initializing members of a member.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.MemberBindingType.ListBinding">
            <summary>
            A binding that represents initializing a member of type <see cref="T:System.Collections.IList"/> or <see cref="T:System.Collections.Generic.ICollection`1"/> from a list of elements.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MemberExpression">
            <summary>
            Represents accessing a field or property.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberExpression.Update(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="expression">The <see cref="P:Microsoft.Scripting.Ast.MemberExpression.Expression"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberExpression.Member">
            <summary>
            Gets the field or property to be accessed.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberExpression.Expression">
            <summary>
            Gets the containing object of the field or property.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="P:Microsoft.Scripting.Ast.MemberExpression.Expression"/>. (Inherited from <see cref="P:Microsoft.Scripting.Ast.MemberExpression.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MemberInitExpression">
            <summary>
            Represents calling a constructor and initializing one or more members of the new object.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberInitExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberInitExpression.Reduce">
            <summary>
            Reduces the <see cref="T:Microsoft.Scripting.Ast.MemberInitExpression"/> to a simpler expression. 
            If CanReduce returns true, this should return a valid expression.
            This method is allowed to return another node which itself 
            must be reduced.
            </summary>
            <returns>The reduced expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberInitExpression.Update(Microsoft.Scripting.Ast.NewExpression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.MemberBinding})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="newExpression">The <see cref="P:Microsoft.Scripting.Ast.MemberInitExpression.NewExpression"/> property of the result.</param>
            <param name="bindings">The <see cref="P:Microsoft.Scripting.Ast.MemberInitExpression.Bindings"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberInitExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.MemberInitExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberInitExpression.CanReduce">
            <summary>
            Gets a value that indicates whether the expression tree node can be reduced. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberInitExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberInitExpression.NewExpression">
            <summary>Gets the expression that represents the constructor call.</summary>
            <returns>A <see cref="T:System.Linq.Expressions.NewExpression" /> that represents the constructor call.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberInitExpression.Bindings">
            <summary>Gets the bindings that describe how to initialize the members of the newly created object.</summary>
            <returns>A <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1" /> of <see cref="T:System.Linq.Expressions.MemberBinding" /> objects which describe how to initialize the members.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MemberListBinding">
            <summary>
            Represents initializing the elements of a collection member of a newly created object. 
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberListBinding.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.ElementInit})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="initializers">The <see cref="P:Microsoft.Scripting.Ast.MemberListBinding.Initializers"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberListBinding.Initializers">
            <summary>
            Gets the element initializers for initializing a collection member of a newly created object.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MemberMemberBinding">
            <summary>
            Represents initializing members of a member of a newly created object.
            </summary>
            <remarks>
            Use the <see cref="M:MemberBind"/> factory methods to create a <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/>.
            The value of the <see cref="P:MemberBinding.BindingType"/> property of a <see cref="T:Microsoft.Scripting.Ast.MemberMemberBinding"/> object is <see cref="T:Microsoft.Scripting.Ast.MemberBinding"/>. 
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MemberMemberBinding.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.MemberBinding})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="bindings">The <see cref="P:Microsoft.Scripting.Ast.MemberMemberBinding.Bindings"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MemberMemberBinding.Bindings">
            <summary>
            Gets the bindings that describe how to initialize the members of a member. 
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.MethodCallExpression">
            <summary>
            Represents a call to either static or an instance method.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MethodCallExpression.Update(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="object">The <see cref="P:Microsoft.Scripting.Ast.MethodCallExpression.Object"/> property of the result.</param>
            <param name="arguments">The <see cref="P:Microsoft.Scripting.Ast.MethodCallExpression.Arguments"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MethodCallExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.MethodCallExpression.Rewrite(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IList{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Returns a new MethodCallExpression replacing the existing instance/args with the
            newly provided instance and args.    Arguments can be null to use the existing
            arguments.
            
            This helper is provided to allow re-writing of nodes to not depend on the specific optimized
            subclass of MethodCallExpression which is being used. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MethodCallExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MethodCallExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.MethodCallExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MethodCallExpression.Method">
            <summary>
            Gets the <see cref="T:System.Reflection.MethodInfo"/> for the method to be called.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MethodCallExpression.Object">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.Expression"/> that represents the instance 
            for instance method calls or null for static method cals.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.MethodCallExpression.Arguments">
            <summary>
            Gets a collection of expressions that represent arguments to the method call.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.NewArrayExpression">
            <summary>
            Represents creating a new array and possibly initializing the elements of the new array.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.NewArrayExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.NewArrayExpression.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="expressions">The <see cref="P:Microsoft.Scripting.Ast.NewArrayExpression.Expressions"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewArrayExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.NewArrayExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewArrayExpression.Expressions">
            <summary>
            Gets the bounds of the array if the value of the <see cref="P:NodeType"/> property is NewArrayBounds, or the values to initialize the elements of the new array if the value of the <see cref="P:NodeType"/> property is NewArrayInit. 
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewArrayInitExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewArrayBoundsExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Ast.NewExpression">
            <summary>
            Represents a constructor call.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.NewExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.NewExpression.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="arguments">The <see cref="P:Microsoft.Scripting.Ast.NewExpression.Arguments"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.NewExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewExpression.Constructor">
            <summary>
            Gets the called constructor.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewExpression.Arguments">
            <summary>
            Gets the arguments to the constructor.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.NewExpression.Members">
            <summary>
            Gets the members that can retrieve the values of the fields that were initialized with constructor arguments.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ParameterExpression">
            <summary>
            Represents a named parameter expression.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ParameterExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ParameterExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.ParameterExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ParameterExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ParameterExpression.Name">
            <summary>
            The Name of the parameter or variable.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.ParameterExpression.IsByRef">
            <summary>
            Indicates that this ParameterExpression is to be treated as a ByRef parameter.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.ByRefParameterExpression">
            <summary>
            Specialized subclass to avoid holding onto the byref flag in a 
            parameter expression.  This version always holds onto the expression
            type explicitly and therefore derives from TypedParameterExpression.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.TypedParameterExpression">
            <summary>
            Specialized subclass which holds onto the type of the expression for
            uncommon types.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.PrimitiveParameterExpression`1">
            <summary>
            Generic type to avoid needing explicit storage for primitive data types
            which are commonly used.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.SwitchCase">
            <summary>
            Represents one case of a <see cref="T:Microsoft.Scripting.Ast.SwitchExpression"/>.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.SwitchCase.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. 
            </summary>
            <returns>A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>. </returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.SwitchCase.Update(System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.Expression},Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="testValues">The <see cref="P:Microsoft.Scripting.Ast.SwitchCase.TestValues"/> property of the result.</param>
            <param name="body">The <see cref="P:Microsoft.Scripting.Ast.SwitchCase.Body"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchCase.TestValues">
            <summary>
            Gets the values of this case. This case is selected for execution when the <see cref="P:Microsoft.Scripting.Ast.SwitchExpression.SwitchValue"/> matches any of these values.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchCase.Body">
            <summary>
            Gets the body of this case.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.SwitchExpression">
            <summary>
            Represents a control expression that handles multiple selections by passing control to a <see cref="T:Microsoft.Scripting.Ast.SwitchCase"/>.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.SwitchExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.SwitchExpression.Update(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.SwitchCase},Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="switchValue">The <see cref="P:Microsoft.Scripting.Ast.SwitchExpression.SwitchValue"/> property of the result.</param>
            <param name="cases">The <see cref="P:Microsoft.Scripting.Ast.SwitchExpression.Cases"/> property of the result.</param>
            <param name="defaultBody">The <see cref="P:Microsoft.Scripting.Ast.SwitchExpression.DefaultBody"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.SwitchExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchExpression.SwitchValue">
            <summary>
            Gets the test for the switch.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchExpression.Cases">
            <summary>
            Gets the collection of <see cref="T:Microsoft.Scripting.Ast.SwitchCase"/> objects for the switch.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchExpression.DefaultBody">
            <summary>
            Gets the test for the switch.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.SwitchExpression.Comparison">
            <summary>
            Gets the equality comparison method, if any.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.TryExpression">
            <summary>
            Represents a try/catch/finally/fault block.
            
            The body is protected by the try block.
            The handlers consist of a set of <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>s that can either be catch or filters.
            The fault runs if an exception is thrown.
            The finally runs regardless of how control exits the body.
            Only one of fault or finally can be supplied.
            The return type of the try block must match the return type of any associated catch statements.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.TryExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.TryExpression.Update(Microsoft.Scripting.Ast.Expression,System.Collections.Generic.IEnumerable{Microsoft.Scripting.Ast.CatchBlock},Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="body">The <see cref="P:Microsoft.Scripting.Ast.TryExpression.Body"/> property of the result.</param>
            <param name="handlers">The <see cref="P:Microsoft.Scripting.Ast.TryExpression.Handlers"/> property of the result.</param>
            <param name="finally">The <see cref="P:Microsoft.Scripting.Ast.TryExpression.Finally"/> property of the result.</param>
            <param name="fault">The <see cref="P:Microsoft.Scripting.Ast.TryExpression.Fault"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TryExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.TryExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TryExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TryExpression.Body">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.Expression"/> representing the body of the try block.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TryExpression.Handlers">
            <summary>
            Gets the collection of <see cref="T:Microsoft.Scripting.Ast.CatchBlock"/>s associated with the try block.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TryExpression.Finally">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.Expression"/> representing the finally block.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TryExpression.Fault">
            <summary>
            Gets the <see cref="T:Microsoft.Scripting.Ast.Expression"/> representing the fault block.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.TypeBinaryExpression">
            <summary>
            Represents an operation between an expression and a type. 
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.TypeBinaryExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.TypeBinaryExpression.Update(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="expression">The <see cref="P:Microsoft.Scripting.Ast.TypeBinaryExpression.Expression"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TypeBinaryExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="P:Microsoft.Scripting.Ast.TypeBinaryExpression.Expression"/> represents.
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.TypeBinaryExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TypeBinaryExpression.NodeType">
            <summary>
            Returns the node type of this Expression. Extension nodes should return
            ExpressionType.Extension when overriding this method.
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TypeBinaryExpression.Expression">
            <summary>
            Gets the expression operand of a type test operation.
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.TypeBinaryExpression.TypeOperand">
            <summary>
            Gets the type operand of a type test operation.
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.TypeUtils.GetBooleanOperator(System.Type,System.String)">
            <summary>
            Searches for an operator method on the type. The method must have
            the specified signature, no generic arguments, and have the
            SpecialName bit set. Also searches inherited operator methods.
            
            NOTE: This was designed to satisfy the needs of op_True and
            op_False, because we have to do runtime lookup for those. It may
            not work right for unary operators in general.
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.TypeUtils.CanCache(System.Type)">
            <summary>
            We can cache references to types, as long as they aren't in
            collectable assemblies. Unfortunately, we can't really distinguish
            between different flavors of assemblies. But, we can at least
            create a whitelist for types in mscorlib (so we get the primitives)
            and System.Core (so we find Func/Action overloads, etc).
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.UnaryExpression">
            <summary>
            Represents an expression that has a unary operator.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.UnaryExpression.Accept(Microsoft.Scripting.Ast.ExpressionVisitor)">
            <summary>
            Dispatches to the specific visit method for this node type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.UnaryExpression.Reduce">
            <summary>
            Reduces the expression node to a simpler expression. 
            If CanReduce returns true, this should return a valid expression.
            This method is allowed to return another node which itself 
            must be reduced.
            </summary>
            <returns>The reduced expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.UnaryExpression.Update(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Creates a new expression that is like this one, but using the
            supplied children. If all of the children are the same, it will
            return this expression.
            </summary>
            <param name="operand">The <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Operand"/> property of the result.</param>
            <returns>This expression if no children changed, or an expression with the updated children.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.UnaryExpression.Type">
            <summary>
            Gets the static type of the expression that this <see cref="T:Microsoft.Scripting.Ast.Expression"/> represents. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="P:Microsoft.Scripting.Ast.UnaryExpression.Type"/> that represents the static type of the expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.UnaryExpression.NodeType">
            <summary>
            Returns the node type of this <see cref="T:Microsoft.Scripting.Ast.Expression"/>. (Inherited from <see cref="T:Microsoft.Scripting.Ast.Expression"/>.)
            </summary>
            <returns>The <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents this expression.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.UnaryExpression.Operand">
            <summary>
            Gets the operand of the unary operation.
            </summary>
            <returns> An <see cref="T:Microsoft.Scripting.Ast.ExpressionType"/> that represents the operand of the unary operation.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.UnaryExpression.Method">
            <summary>
            Gets the implementing method for the unary operation.
            </summary>
            <returns>The <see cref="T:System.Reflection.MethodInfo"/> that represents the implementing method.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.UnaryExpression.IsLifted">
            <summary>
            Gets a value that indicates whether the expression tree node represents a lifted call to an operator.
            </summary>
            <returns>true if the node represents a lifted call; otherwise, false.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.UnaryExpression.IsLiftedToNull">
            <summary>
            Gets a value that indicates whether the expression tree node represents a lifted call to an operator whose return type is lifted to a nullable type.
            </summary>
            <returns>true if the operator's return type is lifted to a nullable type; otherwise, false.</returns>
        </member>
        <member name="P:Microsoft.Scripting.Ast.UnaryExpression.CanReduce">
            <summary>
            Gets a value that indicates whether the expression tree node can be reduced. 
            </summary>        
        </member>
        <member name="T:System.Runtime.CompilerServices.Closure">
            <summary>
            This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.
            Represents the runtime state of a dynamically generated method.
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.Closure.Constants">
            <summary>
            Represents the non-trivial constants and locally executable expressions that are referenced by a dynamically generated method. 
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.Closure.Locals">
            <summary>
            Represents the hoisted local variables from the parent context. 
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.Closure.#ctor(System.Object[],System.Object[])">
            <summary>
            Creates an object to hold state of a dynamically generated method.
            </summary>
            <param name="constants">The constant values used by the method.</param>
            <param name="locals">The hoisted local variables from the parent context.</param>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.CompilerScope">
            <summary>
            CompilerScope is the data structure which the Compiler keeps information
            related to compiling scopes. It stores the following information:
              1. Parent relationship (for resolving variables)
              2. Information about hoisted variables
              3. Information for resolving closures
            
            Instances are produced by VariableBinder, which does a tree walk
            looking for scope nodes: LambdaExpression and BlockExpression.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope._parent">
            <summary>
            parent scope, if any
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope.Node">
            <summary>
            The expression node for this scope
            Can be LambdaExpression, BlockExpression, or CatchBlock
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope.IsMethod">
            <summary>
            True if this node corresponds to an IL method.
            Can only be true if the Node is a LambdaExpression.
            But inlined lambdas will have it set to false.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope.NeedsClosure">
            <summary>
            Does this scope (or any inner scope) close over variables from any
            parent scope?
            Populated by VariableBinder
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope.Definitions">
            <summary>
            Variables defined in this scope, and whether they're hoisted or not
            Populated by VariableBinder
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope.ReferenceCount">
            <summary>
            Each variable referenced within this scope, and how often it was referenced
            Populated by VariableBinder
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope.MergedScopes">
            <summary>
            Scopes whose variables were merged into this one
            
            Created lazily as we create hundreds of compiler scopes w/o merging scopes when compiling rules.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope._hoistedLocals">
            <summary>
            The scope's hoisted locals, if any.
            Provides storage for variables that are referenced from nested lambdas
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope._closureHoistedLocals">
            <summary>
            The closed over hoisted locals
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.CompilerScope._locals">
            <summary>
            Mutable dictionary that maps non-hoisted variables to either local
            slots or argument slots
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.CompilerScope.Enter(Microsoft.Scripting.Ast.Compiler.LambdaCompiler,Microsoft.Scripting.Ast.Compiler.CompilerScope)">
            <summary>
            Called when entering a lambda/block. Performs all variable allocation
            needed, including creating hoisted locals and IL locals for accessing
            parent locals
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.CompilerScope.Exit">
            <summary>
            Frees unnamed locals, clears state associated with this compiler
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.CompilerScope.AddLocal(Microsoft.Scripting.Ast.Compiler.LambdaCompiler,Microsoft.Scripting.Ast.ParameterExpression)">
            <summary>
            Adds a new virtual variable corresponding to an IL local
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.CompilerScope.ResolveVariable(Microsoft.Scripting.Ast.ParameterExpression,Microsoft.Scripting.Ast.Compiler.HoistedLocals)">
            <summary>
            Resolve a local variable in this scope or a closed over scope
            Throws if the variable is defined
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Compiler.CompilerScope.NearestHoistedLocals">
            <summary>
            This scope's hoisted locals, or the closed over locals, if any
            Equivalent to: _hoistedLocals ?? _closureHoistedLocals
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ConstantCheck.AnalyzeTypeIs(Microsoft.Scripting.Ast.TypeBinaryExpression)">
            <summary>
            If the result of a TypeBinaryExpression is known statically, this
            returns the result, otherwise it returns null, meaning we'll need
            to perform the IsInst instruction at runtime.
            
            The result of this function must be equivalent to IsInst, or
            null.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.ConstantCheck.AnalyzeTypeIs(Microsoft.Scripting.Ast.Expression,System.Type)">
            <summary>
            If the result of an isinst opcode is known statically, this
            returns the result, otherwise it returns null, meaning we'll need
            to perform the IsInst instruction at runtime.
            
            The result of this function must be equivalent to IsInst, or
            null.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.DebugViewWriter.WriteTo(Microsoft.Scripting.Ast.Expression,System.IO.TextWriter)">
            <summary>
            Write out the given AST
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.DebugViewWriter.ContainsWhiteSpace(System.String)">
            <summary>
            Return true if the input string contains any whitespace character.
            Otherwise false.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.HoistedLocals">
            <summary>
            Stores information about locals and arguments that are hoisted into
            the closure array because they're referenced in an inner lambda.
            
            This class is sometimes emitted as a runtime constant for internal
            use to hoist variables/parameters in quoted expressions
            
            Invariant: this class stores no mutable state
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.KeyedQueue`2">
            <summary>
            A simple dictionary of queues, keyed off a particular type
            This is useful for storing free lists of variables
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.LambdaCompiler">
            <summary>
            Dynamic Language Runtime Compiler.
            This part compiles lambdas.
            </summary>
            <summary>
            LambdaCompiler is responsible for compiling individual lambda (LambdaExpression). The complete tree may
            contain multiple lambdas, the Compiler class is reponsible for compiling the whole tree, individual
            lambdas are then compiled by the LambdaCompiler.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.UpdateEmitAsTailCallFlag(Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CompilationFlags,Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CompilationFlags)">
            <summary>
            Update the flag with a new EmitAsTailCall flag
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.UpdateEmitExpressionStartFlag(Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CompilationFlags,Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CompilationFlags)">
            <summary>
            Update the flag with a new EmitExpressionStart flag
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.UpdateEmitAsTypeFlag(Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CompilationFlags,Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CompilationFlags)">
            <summary>
            Update the flag with a new EmitAsType flag
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitExpression(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Generates code for this expression in a value position.
            This method will leave the value of the expression
            on the top of the stack typed as Type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitExpressionAsVoid(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Emits an expression and discards the result.  For some nodes this emits
            more optimial code then EmitExpression/Pop
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitArguments(System.Reflection.MethodBase,Microsoft.Scripting.Ast.IArgumentProvider)">
            <summary>
            Emits arguments to a call, and returns an array of writebacks that
            should happen after the call.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitArguments(System.Reflection.MethodBase,Microsoft.Scripting.Ast.IArgumentProvider,System.Int32)">
            <summary>
            Emits arguments to a call, and returns an array of writebacks that
            should happen after the call. For emitting dynamic expressions, we
            need to skip the first parameter of the method (the call site).
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitDelegateConstruction(Microsoft.Scripting.Ast.Compiler.LambdaCompiler)">
            <summary>
            Emits code which creates new instance of the delegateType delegate.
            
            Since the delegate is getting closed over the "Closure" argument, this
            cannot be used with virtual/instance methods (inner must be static method)
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitDelegateConstruction(Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Emits a delegate to the method generated for the LambdaExpression.
            May end up creating a wrapper to match the requested delegate type.
            </summary>
            <param name="lambda">Lambda for which to generate a delegate</param>
            
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitLambdaBody(Microsoft.Scripting.Ast.Compiler.CompilerScope,System.Boolean,Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CompilationFlags)">
            <summary>
            Emits the lambda body. If inlined, the parameters should already be
            pushed onto the IL stack.
            </summary>
            <param name="parent">The parent scope.</param>
            <param name="inlined">true if the lambda is inlined; false otherwise.</param>
            <param name="flags">
            The emum to specify if the lambda is compiled with the tail call optimization. 
            </param>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.NotEmpty(Microsoft.Scripting.Ast.Expression)">
            <summary>
            returns true if the expression is not empty, otherwise false.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.Significant(Microsoft.Scripting.Ast.Expression)">
            <summary>
            returns true if the expression is NOT empty and is not debug info,
            or a block that contains only insignificant expressions.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitExpressionAndBranch(System.Boolean,Microsoft.Scripting.Ast.Expression,System.Reflection.Emit.Label)">
            <summary>
            Emits the expression and then either brtrue/brfalse to the label.
            </summary>
            <param name="branchValue">True for brtrue, false for brfalse.</param>
            <param name="node">The expression to emit.</param>
            <param name="label">The label to conditionally branch to.</param>
            <remarks>
            This function optimizes equality and short circuiting logical
            operators to avoid double-branching, minimize instruction count,
            and generate similar IL to the C# compiler. This is important for
            the JIT to optimize patterns like:
                x != null AndAlso x.GetType() == typeof(SomeType)
                
            One optimization we don't do: we always emits at least one
            conditional branch to the label, and always possibly falls through,
            even if we know if the branch will always succeed or always fail.
            We do this to avoid generating unreachable code, which is fine for
            the CLR JIT, but doesn't verify with peverify.
            
            This kind of optimization could be implemented safely, by doing
            constant folding over conditionals and logical expressions at the
            tree level.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.GetTestValueType(Microsoft.Scripting.Ast.SwitchExpression)">
            <summary>
            Gets the common test test value type of the SwitchExpression.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.DefineSwitchCaseLabel(Microsoft.Scripting.Ast.SwitchCase,System.Reflection.Emit.Label@,System.Boolean@)">
            <summary>
            Creates the label for this case.
            Optimization: if the body is just a goto, and we can branch
            to it, put the goto target directly in the jump table.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitCatchStart(Microsoft.Scripting.Ast.CatchBlock)">
            <summary>
            Emits the start of a catch block.  The exception value that is provided by the
            CLR is stored in the variable specified by the catch block or popped if no
            variable is provided.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.LambdaCompiler._sequencePointCleared">
            <summary>
            The value is true if a clearance was emitted and no new sequence point
            has been emitted since that.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.#ctor(Microsoft.Scripting.Ast.Compiler.AnalyzedTree,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a lambda compiler that will compile to a dynamic method
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.#ctor(Microsoft.Scripting.Ast.Compiler.AnalyzedTree,Microsoft.Scripting.Ast.LambdaExpression,System.Reflection.Emit.MethodBuilder)">
            <summary>
            Creates a lambda compiler that will compile into the provided Methodbuilder
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.#ctor(Microsoft.Scripting.Ast.Compiler.LambdaCompiler,Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Creates a lambda compiler for an inlined lambda
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.Compile(Microsoft.Scripting.Ast.LambdaExpression,System.Runtime.CompilerServices.DebugInfoGenerator)">
            <summary>
            Compiler entry point
            </summary>
            <param name="lambda">LambdaExpression to compile.</param>
            <param name="debugInfoGenerator">Debug info generator.</param>
            <returns>The compiled delegate.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.Compile(Microsoft.Scripting.Ast.LambdaExpression,System.Reflection.Emit.MethodBuilder,System.Runtime.CompilerServices.DebugInfoGenerator)">
            <summary>
            Mutates the MethodBuilder parameter, filling in IL, parameters,
            and return type.
            
            (probably shouldn't be modifying parameters/return type...)
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.GetLambdaArgument(System.Int32)">
            <summary>
            Gets the argument slot corresponding to the parameter at the given
            index. Assumes that the method takes a certain number of prefix
            arguments, followed by the real parameters stored in Parameters
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.EmitLambdaArgument(System.Int32)">
            <summary>
            Returns the index-th argument. This method provides access to the actual arguments
            defined on the lambda itself, and excludes the possible 0-th closure argument.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.LambdaCompiler.CreateLazyInitializedField``1(System.String)">
            <summary>
            Creates an unitialized field suitible for private implementation details
            Works with DynamicMethods or TypeBuilders.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.DebugInfoGenerator">
            <summary>
            Generates debug information for lambdas in an expression tree.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.DebugInfoGenerator.CreatePdbGenerator">
            <summary>
            Creates PDB symbol generator.
            </summary>
            <returns>PDB symbol generator.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.DebugInfoGenerator.MarkSequencePoint(Microsoft.Scripting.Ast.LambdaExpression,System.Int32,Microsoft.Scripting.Ast.DebugInfoExpression)">
            <summary>
            Marks a sequence point.
            </summary>
            <param name="method">The lambda being generated.</param>
            <param name="ilOffset">IL offset where to mark the sequence point.</param>
            <param name="sequencePoint">Debug informaton corresponding to the sequence point.</param>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Set`1">
            <summary>
            A simple hashset, built on Dictionary{K, V}
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.StackSpiller">
            <summary>
            Expression rewriting to spill the CLR stack into temporary variables
            in order to guarantee some properties of code generation, for
            example that we always enter try block on empty stack.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.RewriteExpression(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Compiler.StackSpiller.Stack)">
            <summary>
            Rewrite the expression
            </summary>
            
            <param name="node">Expression to rewrite</param>
            <param name="stack">State of the stack before the expression is emitted.</param>
            <returns>Rewritten expression.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.ToTemp(Microsoft.Scripting.Ast.Expression,Microsoft.Scripting.Ast.Expression@)">
            <summary>
            Will perform:
                save: temp = expression
                return value: temp
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.MakeBlock(Microsoft.Scripting.Ast.Expression[])">
            <summary>
            Creates a special block that is marked as not allowing jumps in.
            This should not be used for rewriting BlockExpression itself, or
            anything else that supports jumping.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.MakeBlock(System.Collections.Generic.IList{Microsoft.Scripting.Ast.Expression})">
            <summary>
            Creates a special block that is marked as not allowing jumps in.
            This should not be used for rewriting BlockExpression itself, or
            anything else that supports jumping.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.StackSpiller._tm">
            <summary>
            The source of temporary variables
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.StackSpiller._startingStack">
            <summary>
            Initial stack state. Normally empty, but when inlining the lambda
            we might have a non-empty starting stack state.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.StackSpiller._lambdaRewrite">
            <summary>
            Lambda rewrite result. We need this for inlined lambdas to figure
            out whether we need to guarentee it an empty stack.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.AnalyzeLambda(Microsoft.Scripting.Ast.LambdaExpression)">
            <summary>
            Analyzes a lambda, producing a new one that has correct invariants
            for codegen. In particular, it spills the IL stack to temps in
            places where it's invalid to have a non-empty stack (for example,
            entering a try statement).
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.Clone``1(System.Collections.ObjectModel.ReadOnlyCollection{``0},System.Int32)">
            <summary>
            Will clone an IList into an array of the same size, and copy
            all vaues up to (and NOT including) the max index
            </summary>
            <returns>The cloned array.</returns>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.RequireNoRefArgs(System.Reflection.MethodBase)">
            <summary>
            If we are spilling, requires that there are no byref arguments to
            the method call.
            
            Used for:
              NewExpression,
              MethodCallExpression,
              InvocationExpression,
              DynamicExpression,
              UnaryExpression,
              BinaryExpression.
            </summary>
            <remarks>
            We could support this if spilling happened later in the compiler.
            Other expressions that can emit calls with arguments (such as
            ListInitExpression and IndexExpression) don't allow byref arguments.
            </remarks>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.StackSpiller.RequireNotRefInstance(Microsoft.Scripting.Ast.Expression)">
            <summary>
            Requires that the instance is not a value type (primitive types are
            okay because they're immutable).
            
            Used for:
             MethodCallExpression,
             MemberExpression (for properties),
             IndexExpression,
             ListInitExpression,
             MemberInitExpression,
             assign to MemberExpression,
             assign to IndexExpression.
            </summary>
            <remarks>
            We could support this if spilling happened later in the compiler.
            </remarks>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.StackSpiller.TempMaker._temp">
            <summary>
            Current temporary variable
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.StackSpiller.TempMaker._freeTemps">
            <summary>
            List of free temporary variables. These can be recycled for new temps.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.StackSpiller.TempMaker._usedTemps">
            <summary>
            Stack of currently active temporary variables.
            </summary>
        </member>
        <member name="F:Microsoft.Scripting.Ast.Compiler.StackSpiller.TempMaker._temps">
            <summary>
            List of all temps created by stackspiller for this rule/lambda
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.StackSpiller.ChildRewriter">
            <summary>
            Rewrites child expressions, spilling them into temps if needed. The
            stack starts in the inital state, and after the first subexpression
            is added it is change to non-empty. This behavior can be overridden
            by setting the stack manually between adds.
            
            When all children have been added, the caller should rewrite the 
            node if Rewrite is true. Then, it should call Finish with etiher
            the orignal expression or the rewritten expression. Finish will call
            Expression.Comma if necessary and return a new Result.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.SpilledExpressionBlock">
            <summary>
            A special subtype of BlockExpression that indicates to the compiler
            that this block is a spilled expression and should not allow jumps in.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.SymbolDocumentGenerator">
            <summary>
            Generator of PDB debugging information for expression trees.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Compiler.VariableBinder">
            <summary>
            Determines if variables are closed over in nested lambdas and need to
            be hoisted.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.ILGen.EmitLoadValueIndirect(Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator,System.Type)">
            <summary>
            Emits a Ldind* instruction for the appropriate type
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.ILGen.EmitStoreValueIndirect(Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator,System.Type)">
            <summary>
            Emits a Stind* instruction for the appropriate type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.ILGen.EmitStoreElement(Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator,System.Type)">
            <summary>
            Emits a Stelem* instruction for the appropriate type.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.ILGen.EmitArray``1(Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator,System.Collections.Generic.IList{``0})">
            <summary>
            Emits an array of constant values provided in the given list.
            The array is strongly typed.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.ILGen.EmitArray(Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator,System.Type,System.Int32,System.Action{System.Int32})">
            <summary>
            Emits an array of values of count size.  The items are emitted via the callback
            which is provided with the current item index to emit.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.ILGen.EmitArray(Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator,System.Type)">
            <summary>
            Emits an array construction code.  
            The code assumes that bounds for all dimensions
            are already emitted.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Compiler.ILGen.EmitDefault(Microsoft.Scripting.Ast.Compiler.OffsetTrackingILGenerator,System.Type)">
            <summary>
            Emits default(T)
            Semantics match C# compiler behavior
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`5">
            <summary>
            Encapsulates a method that takes five parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`6">
            <summary>
            Encapsulates a method that takes six parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`7">
            <summary>
            Encapsulates a method that takes seven parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`8">
            <summary>
            Encapsulates a method that takes eight parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`9">
            <summary>
            Encapsulates a method that takes nine parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`10">
            <summary>
            Encapsulates a method that takes ten parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`11">
            <summary>
            Encapsulates a method that takes eleven parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`12">
            <summary>
            Encapsulates a method that takes twelve parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`13">
            <summary>
            Encapsulates a method that takes thirteen parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`14">
            <summary>
            Encapsulates a method that takes fourteen parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T14">The type of the fourteenth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg14">The fourteenth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`15">
            <summary>
            Encapsulates a method that takes fifteen parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T14">The type of the fourteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T15">The type of the fifteenth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg14">The fourteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg15">The fifteenth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Action`16">
            <summary>
            Encapsulates a method that takes sixteen parameters and does not return a value.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T14">The type of the fourteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T15">The type of the fifteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T16">The type of the sixteenth parameter of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg14">The fourteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg15">The fifteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg16">The sixteenth parameter of the method that this delegate encapsulates.</param>
        </member>
        <member name="T:System.Dynamic.Utils.CacheDict`2">
            <summary>
            Provides a dictionary-like object used for caches which holds onto a maximum
            number of elements specified at construction time.
            
            This class is not thread safe.
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.CacheDict`2.#ctor(System.Int32)">
            <summary>
            Creates a dictionary-like object used for caches.
            </summary>
            <param name="maxSize">The maximum number of elements to store.</param>
        </member>
        <member name="M:System.Dynamic.Utils.CacheDict`2.TryGetValue(`0,`1@)">
            <summary>
            Tries to get the value associated with 'key', returning true if it's found and
            false if it's not present.
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.CacheDict`2.Add(`0,`1)">
            <summary>
            Adds a new element to the cache, replacing and moving it to the front if the
            element is already present.
            </summary>
        </member>
        <member name="P:System.Dynamic.Utils.CacheDict`2.Item(`0)">
            <summary>
            Returns the value associated with the given key, or throws KeyNotFoundException
            if the key is not present.
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.CollectionExtensions.ToReadOnly``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Wraps the provided enumerable into a ReadOnlyCollection{T}
            
            Copies all of the data into a new array, so the data can't be
            changed after creation. The exception is if the enumerable is
            already a ReadOnlyCollection{T}, in which case we just return it.
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.ContractUtils.RequiresArrayRange``1(System.Collections.Generic.IList{``0},System.Int32,System.Int32,System.String,System.String)">
            <summary>
            Requires the range [offset, offset + count] to be a subset of [0, array.Count].
            </summary>
            <exception cref="T:System.ArgumentNullException">Array is <c>null</c>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">Offset or count are out of range.</exception>
        </member>
        <member name="M:System.Dynamic.Utils.ContractUtils.RequiresNotNullItems``1(System.Collections.Generic.IList{``0},System.String)">
            <summary>
            Requires the array and all its items to be non-null.
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Strings">
            <summary>
               Strongly-typed and parameterized string factory.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.VariableMustNotBeByRef(System.Object,System.Object)">
            <summary>
            A string like  "Variable '{0}' uses unsupported type '{1}'. Reference types are not supported for variables."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.DuplicateVariable(System.Object)">
            <summary>
            A string like  "Found duplicate parameter '{0}'. Each ParameterExpression in the list must be a unique object."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExtensionNodeMustOverrideProperty(System.Object)">
            <summary>
            A string like  "Extension node must override the property {0}."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UserDefinedOperatorMustBeStatic(System.Object)">
            <summary>
            A string like  "User-defined operator method '{0}' must be static."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UserDefinedOperatorMustNotBeVoid(System.Object)">
            <summary>
            A string like  "User-defined operator method '{0}' must not be void."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.CoercionOperatorNotDefined(System.Object,System.Object)">
            <summary>
            A string like  "No coercion operator is defined between types '{0}' and '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.DynamicBinderResultNotAssignable(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "The result type '{0}' of the dynamic binding produced by binder '{1}' is not compatible with the result type '{2}' expected by the call site."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.DynamicObjectResultNotAssignable(System.Object,System.Object,System.Object,System.Object)">
            <summary>
            A string like  "The result type '{0}' of the dynamic binding produced by the object with type '{1}' for the binder '{2}' is not compatible with the result type '{3}' expected by the call site."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.DynamicBindingNeedsRestrictions(System.Object,System.Object)">
            <summary>
            A string like  "The result of the dynamic binding produced by the object with type '{0}' for the binder '{1}' needs at least one restriction."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.BinderNotCompatibleWithCallSite(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "The result type '{0}' of the binder '{1}' is not compatible with the result type '{2}' expected by the call site."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnaryOperatorNotDefined(System.Object,System.Object)">
            <summary>
            A string like  "The unary operator {0} is not defined for the type '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.BinaryOperatorNotDefined(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "The binary operator {0} is not defined for the types '{1}' and '{2}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ReferenceEqualityNotDefined(System.Object,System.Object)">
            <summary>
            A string like  "Reference equality is not defined for the types '{0}' and '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.OperandTypesDoNotMatchParameters(System.Object,System.Object)">
            <summary>
            A string like  "The operands for operator '{0}' do not match the parameters of method '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.OverloadOperatorTypeDoesNotMatchConversionType(System.Object,System.Object)">
            <summary>
            A string like  "The return type of overload method for operator '{0}' does not match the parameter type of conversion method '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.EqualityMustReturnBoolean(System.Object)">
            <summary>
            A string like  "The user-defined equality method '{0}' must return a boolean value."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.CannotAutoInitializeValueTypeElementThroughProperty(System.Object)">
            <summary>
            A string like  "Cannot auto initialize elements of value type through property '{0}', use assignment instead"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.CannotAutoInitializeValueTypeMemberThroughProperty(System.Object)">
            <summary>
            A string like  "Cannot auto initialize members of value type through property '{0}', use assignment instead"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.IncorrectTypeForTypeAs(System.Object)">
            <summary>
            A string like  "The type used in TypeAs Expression must be of reference or nullable type, {0} is neither"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeCannotInitializeArrayType(System.Object,System.Object)">
            <summary>
            A string like  "An expression of type '{0}' cannot be used to initialize an array of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeDoesNotMatchConstructorParameter(System.Object,System.Object)">
            <summary>
            A string like  "Expression of type '{0}' cannot be used for constructor parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ArgumentTypeDoesNotMatchMember(System.Object,System.Object)">
            <summary>
            A string like  " Argument type '{0}' does not match the corresponding member type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ArgumentMemberNotDeclOnType(System.Object,System.Object)">
            <summary>
            A string like  " The member '{0}' is not declared on type '{1}' being created"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeDoesNotMatchMethodParameter(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "Expression of type '{0}' cannot be used for parameter of type '{1}' of method '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeDoesNotMatchParameter(System.Object,System.Object)">
            <summary>
            A string like  "Expression of type '{0}' cannot be used for parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeDoesNotMatchReturn(System.Object,System.Object)">
            <summary>
            A string like  "Expression of type '{0}' cannot be used for return type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeDoesNotMatchAssignment(System.Object,System.Object)">
            <summary>
            A string like  "Expression of type '{0}' cannot be used for assignment to type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeDoesNotMatchLabel(System.Object,System.Object)">
            <summary>
            A string like  "Expression of type '{0}' cannot be used for label of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ExpressionTypeNotInvocable(System.Object)">
            <summary>
            A string like  "Expression of type '{0}' cannot be invoked"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.FieldNotDefinedForType(System.Object,System.Object)">
            <summary>
            A string like  "Field '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InstanceFieldNotDefinedForType(System.Object,System.Object)">
            <summary>
            A string like  "Instance field '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.FieldInfoNotDefinedForType(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "Field '{0}.{1}' is not defined for type '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfMethodCallArguments(System.Object)">
            <summary>
            A string like  "Incorrect number of arguments supplied for call to method '{0}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MemberNotFieldOrProperty(System.Object)">
            <summary>
            A string like  "Member '{0}' not field or property"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MethodContainsGenericParameters(System.Object)">
            <summary>
            A string like  "Method {0} contains generic parameters"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MethodIsGeneric(System.Object)">
            <summary>
            A string like  "Method {0} is a generic method definition"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MethodNotPropertyAccessor(System.Object,System.Object)">
            <summary>
            A string like  "The method '{0}.{1}' is not a property accessor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.PropertyDoesNotHaveGetter(System.Object)">
            <summary>
            A string like  "The property '{0}' has no 'get' accessor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.PropertyDoesNotHaveSetter(System.Object)">
            <summary>
            A string like  "The property '{0}' has no 'set' accessor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.PropertyDoesNotHaveAccessor(System.Object)">
            <summary>
            A string like  "The property '{0}' has no 'get' or 'set' accessors"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.NotAMemberOfType(System.Object,System.Object)">
            <summary>
            A string like  "'{0}' is not a member of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.OperatorNotImplementedForType(System.Object,System.Object)">
            <summary>
            A string like  "The operator '{0}' is not implemented for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ParameterExpressionNotValidAsDelegate(System.Object,System.Object)">
            <summary>
            A string like  "ParameterExpression of type '{0}' cannot be used for delegate parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.PropertyNotDefinedForType(System.Object,System.Object)">
            <summary>
            A string like  "Property '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InstancePropertyNotDefinedForType(System.Object,System.Object)">
            <summary>
            A string like  "Instance property '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InstancePropertyWithoutParameterNotDefinedForType(System.Object,System.Object)">
            <summary>
            A string like  "Instance property '{0}' that takes no argument is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InstancePropertyWithSpecifiedParametersNotDefinedForType(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "Instance property '{0}{1}' is not defined for type '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InstanceAndMethodTypeMismatch(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "Method '{0}' declared on type '{1}' cannot be called with instance of type '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TypeContainsGenericParameters(System.Object)">
            <summary>
            A string like  "Type {0} contains generic parameters"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TypeIsGeneric(System.Object)">
            <summary>
            A string like  "Type {0} is a generic type definition"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TypeMissingDefaultConstructor(System.Object)">
            <summary>
            A string like  "Type '{0}' does not have a default constructor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.ElementInitializerMethodNoRefOutParam(System.Object,System.Object)">
            <summary>
            A string like  "Parameter '{0}' of element initializer method '{1}' must not be a pass by reference parameter"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TypeNotIEnumerable(System.Object)">
            <summary>
            A string like  "Type '{0}' is not IEnumerable"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TypeParameterIsNotDelegate(System.Object)">
            <summary>
            A string like  "Type parameter is {0}. Expected a delegate."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InvalidCast(System.Object,System.Object)">
            <summary>
            A string like  "Cannot cast from type '{0}' to type '{1}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnhandledBinary(System.Object)">
            <summary>
            A string like  "Unhandled binary: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnhandledBindingType(System.Object)">
            <summary>
            A string like  "Unhandled Binding Type: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnhandledConvert(System.Object)">
            <summary>
            A string like  "Unhandled convert: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnhandledExpressionType(System.Object)">
            <summary>
            A string like  "Unhandled Expression Type: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnhandledUnary(System.Object)">
            <summary>
            A string like  "Unhandled unary: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UserDefinedOpMustHaveConsistentTypes(System.Object,System.Object)">
            <summary>
            A string like  "The user-defined operator method '{1}' for operator '{0}' must have identical parameter and return types."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UserDefinedOpMustHaveValidReturnType(System.Object,System.Object)">
            <summary>
            A string like  "The user-defined operator method '{1}' for operator '{0}' must return the same type as its parameter or a derived type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.LogicalOperatorMustHaveBooleanOperators(System.Object,System.Object)">
            <summary>
            A string like  "The user-defined operator method '{1}' for operator '{0}' must have associated boolean True and False operators."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MethodDoesNotExistOnType(System.Object,System.Object)">
            <summary>
            A string like  "No method '{0}' exists on type '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MethodWithArgsDoesNotExistOnType(System.Object,System.Object)">
            <summary>
            A string like  "No method '{0}' on type '{1}' is compatible with the supplied arguments."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.GenericMethodWithArgsDoesNotExistOnType(System.Object,System.Object)">
            <summary>
            A string like  "No generic method '{0}' on type '{1}' is compatible with the supplied type arguments and arguments. No type arguments should be provided if the method is non-generic. "
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MethodWithMoreThanOneMatch(System.Object,System.Object)">
            <summary>
            A string like  "More than one method '{0}' on type '{1}' is compatible with the supplied arguments."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.PropertyWithMoreThanOneMatch(System.Object,System.Object)">
            <summary>
            A string like  "More than one property '{0}' on type '{1}' is compatible with the supplied arguments."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.AmbiguousMatchInExpandoObject(System.Object)">
            <summary>
            A string like  "More than one key matching '{0}' was found in the ExpandoObject."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.SameKeyExistsInExpando(System.Object)">
            <summary>
            A string like  "An element with the same key '{0}' already exists in the ExpandoObject."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.KeyDoesNotExistInExpando(System.Object)">
            <summary>
            A string like  "The specified key '{0}' does not exist in the ExpandoObject."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InvalidOperation(System.Object)">
            <summary>
            A string like  "Invalid operation: '{0}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.OutOfRange(System.Object,System.Object)">
            <summary>
            A string like  "{0} must be greater than or equal to {1}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.LabelTargetAlreadyDefined(System.Object)">
            <summary>
            A string like  "Cannot redefine label '{0}' in an inner block."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.LabelTargetUndefined(System.Object)">
            <summary>
            A string like  "Cannot jump to undefined label '{0}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.AmbiguousJump(System.Object)">
            <summary>
            A string like  "Cannot jump to ambiguous label '{0}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.NonLocalJumpWithValue(System.Object)">
            <summary>
            A string like  "Cannot jump to non-local label '{0}' with a value. Only jumps to labels defined in outer blocks can pass values."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.CannotCompileConstant(System.Object)">
            <summary>
            A string like  "CompileToMethod cannot compile constant '{0}' because it is a non-trivial value, such as a live object. Instead, create an expression tree that can construct this value."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InvalidLvalue(System.Object)">
            <summary>
            A string like  "Invalid lvalue for assignment: {0}."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InvalidMemberType(System.Object)">
            <summary>
            A string like  "Invalid member type: {0}."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnknownLiftType(System.Object)">
            <summary>
            A string like  "unknown lift type: '{0}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.IllegalNewGenericParams(System.Object)">
            <summary>
            A string like  "Cannot create instance of {0} because it contains generic parameters"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UndefinedVariable(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "variable '{0}' of type '{1}' referenced from scope '{2}', but it is not defined"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.CannotCloseOverByRef(System.Object,System.Object)">
            <summary>
            A string like  "Cannot close over byref parameter '{0}' referenced in lambda '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.UnexpectedVarArgsCall(System.Object)">
            <summary>
            A string like  "Unexpected VarArgs call to method '{0}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MustRewriteToSameNode(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "When called from '{0}', rewriting a node of type '{1}' must return a non-null value of the same type. Alternatively, override '{2}' and change it to not visit children of this type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MustRewriteChildToSameType(System.Object,System.Object,System.Object)">
            <summary>
            A string like  "Rewriting child expression from type '{0}' to type '{1}' is not allowed, because it would change the meaning of the operation. If this is intentional, override '{2}' and change it to allow this rewrite."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.MustRewriteWithoutMethod(System.Object,System.Object)">
            <summary>
            A string like  "Rewritten expression calls operator method '{0}', but the original node had no operator method. If this is is intentional, override '{1}' and change it to allow this rewrite."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InvalidNullValue(System.Object)">
            <summary>
            A string like  "The value null is not of type '{0}' and cannot be used in this collection."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InvalidObjectType(System.Object,System.Object)">
            <summary>
            A string like  "The value '{0}' is not of type '{1}' and cannot be used in this collection."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TryNotSupportedForMethodsWithRefArgs(System.Object)">
            <summary>
            A string like  "TryExpression is not supported as an argument to method '{0}' because it has an argument with by-ref type. Construct the tree so the TryExpression is not nested inside of this expression."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TryNotSupportedForValueTypeInstances(System.Object)">
            <summary>
            A string like  "TryExpression is not supported as a child expression when accessing a member on type '{0}' because it is a value type. Construct the tree so the TryExpression is not nested inside of this expression."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.TestValueTypeDoesNotMatchComparisonMethodParameter(System.Object,System.Object)">
            <summary>
            A string like  "Test value of type '{0}' cannot be used for the comparison method parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.SwitchValueTypeDoesNotMatchComparisonMethodParameter(System.Object,System.Object)">
            <summary>
            A string like  "Switch value of type '{0}' cannot be used for the comparison method parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Strings.InvalidMetaObjectCreated(System.Object)">
            <summary>
            A string like  "An IDynamicMetaObjectProvider {0} created an invalid DynamicMetaObject instance."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.MethodPreconditionViolated">
            <summary>
            A string like  "Method precondition violated"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.InvalidArgumentValue">
            <summary>
            A string like  "Invalid argument value"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.NonEmptyCollectionRequired">
            <summary>
            A string like  "Non-empty collection required"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgCntMustBeGreaterThanNameCnt">
            <summary>
            A string like  "Argument count must be greater than number of named arguments."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ReducibleMustOverrideReduce">
            <summary>
            A string like  "reducible nodes must override Expression.Reduce()"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.MustReduceToDifferent">
            <summary>
            A string like  "node cannot reduce to itself or null"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ReducedNotCompatible">
            <summary>
            A string like  "cannot assign from the reduced node type to the original node type"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.SetterHasNoParams">
            <summary>
            A string like  "Setter must have parameters."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.PropertyCannotHaveRefType">
            <summary>
            A string like  "Property cannot have a managed pointer type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IndexesOfSetGetMustMatch">
            <summary>
            A string like  "Indexing parameters of getter and setter must match."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.AccessorsCannotHaveVarArgs">
            <summary>
            A string like  "Accessor method should not have VarArgs."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.AccessorsCannotHaveByRefArgs">
            <summary>
            A string like  "Accessor indexes cannot be passed ByRef."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.BoundsCannotBeLessThanOne">
            <summary>
            A string like  "Bounds count cannot be less than 1"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.TypeMustNotBeByRef">
            <summary>
            A string like  "type must not be ByRef"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.TypeDoesNotHaveConstructorForTheSignature">
            <summary>
            A string like  "Type doesn't have constructor with a given signature"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.CountCannotBeNegative">
            <summary>
            A string like  "Count must be non-negative."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArrayTypeMustBeArray">
            <summary>
            A string like  "arrayType must be an array type"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.SetterMustBeVoid">
            <summary>
            A string like  "Setter should have void type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.PropertyTyepMustMatchSetter">
            <summary>
            A string like  "Property type must match the value type of setter"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.BothAccessorsMustBeStatic">
            <summary>
            A string like  "Both accessors must be static."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.OnlyStaticFieldsHaveNullInstance">
            <summary>
            A string like  "Static field requires null instance, non-static field requires non-null instance."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.OnlyStaticPropertiesHaveNullInstance">
            <summary>
            A string like  "Static property requires null instance, non-static property requires non-null instance."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.OnlyStaticMethodsHaveNullInstance">
            <summary>
            A string like  "Static method requires null instance, non-static method requires non-null instance."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.PropertyTypeCannotBeVoid">
            <summary>
            A string like  "Property cannot have a void type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.InvalidUnboxType">
            <summary>
            A string like  "Can only unbox from an object or interface type to a value type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ExpressionMustBeReadable">
            <summary>
            A string like  "Expression must be readable"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ExpressionMustBeWriteable">
            <summary>
            A string like  "Expression must be writeable"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustNotHaveValueType">
            <summary>
            A string like  "Argument must not have a value type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.MustBeReducible">
            <summary>
            A string like  "must be reducible node"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.AllTestValuesMustHaveSameType">
            <summary>
            A string like  "All test values must have the same type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.AllCaseBodiesMustHaveSameType">
            <summary>
            A string like  "All case bodies and the default body must have the same type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.DefaultBodyMustBeSupplied">
            <summary>
            A string like  "Default body must be supplied if case bodies are not System.Void."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.MethodBuilderDoesNotHaveTypeBuilder">
            <summary>
            A string like  "MethodBuilder does not have a valid TypeBuilder"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.TypeMustBeDerivedFromSystemDelegate">
            <summary>
            A string like  "Type must be derived from System.Delegate"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentTypeCannotBeVoid">
            <summary>
            A string like  "Argument type cannot be void"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.LabelMustBeVoidOrHaveExpression">
            <summary>
            A string like  "Label type must be System.Void if an expression is not supplied"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.LabelTypeMustBeVoid">
            <summary>
            A string like  "Type must be System.Void for this label argument"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.QuotedExpressionMustBeLambda">
            <summary>
            A string like  "Quoted expression must be a lambda"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.StartEndMustBeOrdered">
            <summary>
            A string like  "Start and End must be well ordered"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.FaultCannotHaveCatchOrFinally">
            <summary>
            A string like  "fault cannot be used with catch or finally clauses"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.TryMustHaveCatchFinallyOrFault">
            <summary>
            A string like  "try must have at least one catch, finally, or fault clause"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.BodyOfCatchMustHaveSameTypeAsBodyOfTry">
            <summary>
            A string like  "Body of catch must have the same type as body of try."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ConversionIsNotSupportedForArithmeticTypes">
            <summary>
            A string like  "Conversion is not supported for arithmetic types without operator overloading."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeArray">
            <summary>
            A string like  "Argument must be array"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeBoolean">
            <summary>
            A string like  "Argument must be boolean"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeFieldInfoOrPropertInfo">
            <summary>
            A string like  "Argument must be either a FieldInfo or PropertyInfo"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeFieldInfoOrPropertInfoOrMethod">
            <summary>
            A string like  "Argument must be either a FieldInfo, PropertyInfo or MethodInfo"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeInstanceMember">
            <summary>
            A string like  "Argument must be an instance member"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeInteger">
            <summary>
            A string like  "Argument must be of an integer type"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeArrayIndexType">
            <summary>
            A string like  "Argument for array index must be of type Int32"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentMustBeSingleDimensionalArrayType">
            <summary>
            A string like  "Argument must be single dimensional array type"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentTypesMustMatch">
            <summary>
            A string like  "Argument types do not match"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.CoalesceUsedOnNonNullType">
            <summary>
            A string like  "Coalesce used with type that cannot be null"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfIndexes">
            <summary>
            A string like  "Incorrect number of indexes"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfLambdaArguments">
            <summary>
            A string like  "Incorrect number of arguments supplied for lambda invocation"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfLambdaDeclarationParameters">
            <summary>
            A string like  "Incorrect number of parameters supplied for lambda declaration"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfConstructorArguments">
            <summary>
            A string like  "Incorrect number of arguments for constructor"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfMembersForGivenConstructor">
            <summary>
            A string like  " Incorrect number of members for constructor"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfArgumentsForMembers">
            <summary>
            A string like  "Incorrect number of arguments for the given members "
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.LambdaTypeMustBeDerivedFromSystemDelegate">
            <summary>
            A string like  "Lambda type parameter must be derived from System.Delegate"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ListInitializerWithZeroMembers">
            <summary>
            A string like  "List initializers must contain at least one initializer"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ElementInitializerMethodNotAdd">
            <summary>
            A string like  "Element initializer method must be named 'Add'"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ElementInitializerMethodWithZeroArgs">
            <summary>
            A string like  "Element initializer method must have at least 1 parameter"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ElementInitializerMethodStatic">
            <summary>
            A string like  "Element initializer method must be an instance method"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.UnexpectedCoalesceOperator">
            <summary>
            A string like  "Unexpected coalesce operator."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.UnhandledBinding">
            <summary>
            A string like  "Unhandled binding "
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.UnknownBindingType">
            <summary>
            A string like  "Unknown binding type"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfTypeArgsForFunc">
            <summary>
            A string like  "An incorrect number of type args were specified for the declaration of a Func type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.IncorrectNumberOfTypeArgsForAction">
            <summary>
            A string like  "An incorrect number of type args were specified for the declaration of an Action type."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ArgumentCannotBeOfTypeVoid">
            <summary>
            A string like  "Argument type cannot be System.Void."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.NoOrInvalidRuleProduced">
            <summary>
            A string like  "No or Invalid rule produced"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.FirstArgumentMustBeCallSite">
            <summary>
            A string like  "First argument of delegate must be CallSite"
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.BindingCannotBeNull">
            <summary>
            A string like  "Bind cannot return null."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.QueueEmpty">
            <summary>
            A string like  "Queue empty."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ControlCannotLeaveFinally">
            <summary>
            A string like  "Control cannot leave a finally block."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ControlCannotLeaveFilterTest">
            <summary>
            A string like  "Control cannot leave a filter test."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ControlCannotEnterTry">
            <summary>
            A string like  "Control cannot enter a try block."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ControlCannotEnterExpression">
            <summary>
            A string like  "Control cannot enter an expression--only statements can be jumped into."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.ExtensionNotReduced">
            <summary>
            A string like  "Extension should have been reduced."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.CannotCompileDynamic">
            <summary>
            A string like  "Dynamic expressions are not supported by CompileToMethod. Instead, create an expression tree that uses System.Runtime.CompilerServices.CallSite."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.InvalidOutputDir">
            <summary>
            A string like  "Invalid output directory."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.InvalidAsmNameOrExtension">
            <summary>
            A string like  "Invalid assembly name or file extension."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.CollectionReadOnly">
            <summary>
            A string like  "Collection is read-only."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.RethrowRequiresCatch">
            <summary>
            A string like  "Rethrow statement is valid only inside a Catch block."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.TryNotAllowedInFilter">
            <summary>
            A string like  "Try expression is not allowed inside a filter body."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.CollectionModifiedWhileEnumerating">
            <summary>
            A string like  "Collection was modified; enumeration operation may not execute."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.EnumerationIsDone">
            <summary>
            A string like  "Enumeration has either not started or has already finished."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.HomogenousAppDomainRequired">
            <summary>
            A string like  "Dynamic operations can only be performed in homogenous AppDomain."
            </summary>
        </member>
        <member name="P:Microsoft.Scripting.Ast.Strings.PdbGeneratorNeedsExpressionCompiler">
            <summary>
            A string like  "DebugInfoGenerator created by CreatePdbGenerator can only be used with LambdaExpression.CompileToMethod."
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Ast.Error">
            <summary>
               Strongly-typed and parameterized exception factory.
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgCntMustBeGreaterThanNameCnt">
            <summary>
            ArgumentException with message like "Argument count must be greater than number of named arguments."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ReducibleMustOverrideReduce">
            <summary>
            ArgumentException with message like "reducible nodes must override Expression.Reduce()"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MustReduceToDifferent">
            <summary>
            ArgumentException with message like "node cannot reduce to itself or null"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ReducedNotCompatible">
            <summary>
            ArgumentException with message like "cannot assign from the reduced node type to the original node type"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.SetterHasNoParams">
            <summary>
            ArgumentException with message like "Setter must have parameters."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyCannotHaveRefType">
            <summary>
            ArgumentException with message like "Property cannot have a managed pointer type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IndexesOfSetGetMustMatch">
            <summary>
            ArgumentException with message like "Indexing parameters of getter and setter must match."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.AccessorsCannotHaveVarArgs">
            <summary>
            ArgumentException with message like "Accessor method should not have VarArgs."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.AccessorsCannotHaveByRefArgs">
            <summary>
            ArgumentException with message like "Accessor indexes cannot be passed ByRef."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.BoundsCannotBeLessThanOne">
            <summary>
            ArgumentException with message like "Bounds count cannot be less than 1"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeMustNotBeByRef">
            <summary>
            ArgumentException with message like "type must not be ByRef"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeDoesNotHaveConstructorForTheSignature">
            <summary>
            ArgumentException with message like "Type doesn't have constructor with a given signature"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CountCannotBeNegative">
            <summary>
            ArgumentException with message like "Count must be non-negative."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArrayTypeMustBeArray">
            <summary>
            ArgumentException with message like "arrayType must be an array type"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.SetterMustBeVoid">
            <summary>
            ArgumentException with message like "Setter should have void type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyTyepMustMatchSetter">
            <summary>
            ArgumentException with message like "Property type must match the value type of setter"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.BothAccessorsMustBeStatic">
            <summary>
            ArgumentException with message like "Both accessors must be static."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.OnlyStaticMethodsHaveNullInstance">
            <summary>
            ArgumentException with message like "Static method requires null instance, non-static method requires non-null instance."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyTypeCannotBeVoid">
            <summary>
            ArgumentException with message like "Property cannot have a void type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidUnboxType">
            <summary>
            ArgumentException with message like "Can only unbox from an object or interface type to a value type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustNotHaveValueType">
            <summary>
            ArgumentException with message like "Argument must not have a value type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MustBeReducible">
            <summary>
            ArgumentException with message like "must be reducible node"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.DefaultBodyMustBeSupplied">
            <summary>
            ArgumentException with message like "Default body must be supplied if case bodies are not System.Void."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MethodBuilderDoesNotHaveTypeBuilder">
            <summary>
            ArgumentException with message like "MethodBuilder does not have a valid TypeBuilder"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeMustBeDerivedFromSystemDelegate">
            <summary>
            ArgumentException with message like "Type must be derived from System.Delegate"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentTypeCannotBeVoid">
            <summary>
            ArgumentException with message like "Argument type cannot be void"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.LabelMustBeVoidOrHaveExpression">
            <summary>
            ArgumentException with message like "Label type must be System.Void if an expression is not supplied"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.LabelTypeMustBeVoid">
            <summary>
            ArgumentException with message like "Type must be System.Void for this label argument"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.QuotedExpressionMustBeLambda">
            <summary>
            ArgumentException with message like "Quoted expression must be a lambda"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.VariableMustNotBeByRef(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Variable '{0}' uses unsupported type '{1}'. Reference types are not supported for variables."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.DuplicateVariable(System.Object)">
            <summary>
            ArgumentException with message like "Found duplicate parameter '{0}'. Each ParameterExpression in the list must be a unique object."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.StartEndMustBeOrdered">
            <summary>
            ArgumentException with message like "Start and End must be well ordered"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.FaultCannotHaveCatchOrFinally">
            <summary>
            ArgumentException with message like "fault cannot be used with catch or finally clauses"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TryMustHaveCatchFinallyOrFault">
            <summary>
            ArgumentException with message like "try must have at least one catch, finally, or fault clause"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.BodyOfCatchMustHaveSameTypeAsBodyOfTry">
            <summary>
            ArgumentException with message like "Body of catch must have the same type as body of try."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExtensionNodeMustOverrideProperty(System.Object)">
            <summary>
            InvalidOperationException with message like "Extension node must override the property {0}."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UserDefinedOperatorMustBeStatic(System.Object)">
            <summary>
            ArgumentException with message like "User-defined operator method '{0}' must be static."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UserDefinedOperatorMustNotBeVoid(System.Object)">
            <summary>
            ArgumentException with message like "User-defined operator method '{0}' must not be void."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CoercionOperatorNotDefined(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "No coercion operator is defined between types '{0}' and '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.DynamicBinderResultNotAssignable(System.Object,System.Object,System.Object)">
            <summary>
            InvalidCastException with message like "The result type '{0}' of the dynamic binding produced by binder '{1}' is not compatible with the result type '{2}' expected by the call site."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.DynamicObjectResultNotAssignable(System.Object,System.Object,System.Object,System.Object)">
            <summary>
            InvalidCastException with message like "The result type '{0}' of the dynamic binding produced by the object with type '{1}' for the binder '{2}' is not compatible with the result type '{3}' expected by the call site."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.DynamicBindingNeedsRestrictions(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "The result of the dynamic binding produced by the object with type '{0}' for the binder '{1}' needs at least one restriction."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.BinderNotCompatibleWithCallSite(System.Object,System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "The result type '{0}' of the binder '{1}' is not compatible with the result type '{2}' expected by the call site."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnaryOperatorNotDefined(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "The unary operator {0} is not defined for the type '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.BinaryOperatorNotDefined(System.Object,System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "The binary operator {0} is not defined for the types '{1}' and '{2}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ReferenceEqualityNotDefined(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "Reference equality is not defined for the types '{0}' and '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.OperandTypesDoNotMatchParameters(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "The operands for operator '{0}' do not match the parameters of method '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.OverloadOperatorTypeDoesNotMatchConversionType(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "The return type of overload method for operator '{0}' does not match the parameter type of conversion method '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ConversionIsNotSupportedForArithmeticTypes">
            <summary>
            InvalidOperationException with message like "Conversion is not supported for arithmetic types without operator overloading."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeArray">
            <summary>
            ArgumentException with message like "Argument must be array"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeBoolean">
            <summary>
            ArgumentException with message like "Argument must be boolean"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.EqualityMustReturnBoolean(System.Object)">
            <summary>
            ArgumentException with message like "The user-defined equality method '{0}' must return a boolean value."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeFieldInfoOrPropertInfo">
            <summary>
            ArgumentException with message like "Argument must be either a FieldInfo or PropertyInfo"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeFieldInfoOrPropertInfoOrMethod">
            <summary>
            ArgumentException with message like "Argument must be either a FieldInfo, PropertyInfo or MethodInfo"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeInstanceMember">
            <summary>
            ArgumentException with message like "Argument must be an instance member"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeInteger">
            <summary>
            ArgumentException with message like "Argument must be of an integer type"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeArrayIndexType">
            <summary>
            ArgumentException with message like "Argument for array index must be of type Int32"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMustBeSingleDimensionalArrayType">
            <summary>
            ArgumentException with message like "Argument must be single dimensional array type"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentTypesMustMatch">
            <summary>
            ArgumentException with message like "Argument types do not match"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CannotAutoInitializeValueTypeElementThroughProperty(System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot auto initialize elements of value type through property '{0}', use assignment instead"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CannotAutoInitializeValueTypeMemberThroughProperty(System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot auto initialize members of value type through property '{0}', use assignment instead"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectTypeForTypeAs(System.Object)">
            <summary>
            ArgumentException with message like "The type used in TypeAs Expression must be of reference or nullable type, {0} is neither"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CoalesceUsedOnNonNullType">
            <summary>
            InvalidOperationException with message like "Coalesce used with type that cannot be null"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeCannotInitializeArrayType(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "An expression of type '{0}' cannot be used to initialize an array of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeDoesNotMatchConstructorParameter(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Expression of type '{0}' cannot be used for constructor parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentTypeDoesNotMatchMember(System.Object,System.Object)">
            <summary>
            ArgumentException with message like " Argument type '{0}' does not match the corresponding member type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentMemberNotDeclOnType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like " The member '{0}' is not declared on type '{1}' being created"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeDoesNotMatchMethodParameter(System.Object,System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Expression of type '{0}' cannot be used for parameter of type '{1}' of method '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeDoesNotMatchParameter(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Expression of type '{0}' cannot be used for parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeDoesNotMatchReturn(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Expression of type '{0}' cannot be used for return type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeDoesNotMatchAssignment(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Expression of type '{0}' cannot be used for assignment to type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeDoesNotMatchLabel(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Expression of type '{0}' cannot be used for label of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExpressionTypeNotInvocable(System.Object)">
            <summary>
            ArgumentException with message like "Expression of type '{0}' cannot be invoked"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.FieldNotDefinedForType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Field '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InstanceFieldNotDefinedForType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Instance field '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.FieldInfoNotDefinedForType(System.Object,System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Field '{0}.{1}' is not defined for type '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfIndexes">
            <summary>
            ArgumentException with message like "Incorrect number of indexes"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfLambdaArguments">
            <summary>
            InvalidOperationException with message like "Incorrect number of arguments supplied for lambda invocation"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfLambdaDeclarationParameters">
            <summary>
            ArgumentException with message like "Incorrect number of parameters supplied for lambda declaration"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfMethodCallArguments(System.Object)">
            <summary>
            ArgumentException with message like "Incorrect number of arguments supplied for call to method '{0}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfConstructorArguments">
            <summary>
            ArgumentException with message like "Incorrect number of arguments for constructor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfMembersForGivenConstructor">
            <summary>
            ArgumentException with message like " Incorrect number of members for constructor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfArgumentsForMembers">
            <summary>
            ArgumentException with message like "Incorrect number of arguments for the given members "
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.LambdaTypeMustBeDerivedFromSystemDelegate">
            <summary>
            ArgumentException with message like "Lambda type parameter must be derived from System.Delegate"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MemberNotFieldOrProperty(System.Object)">
            <summary>
            ArgumentException with message like "Member '{0}' not field or property"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MethodContainsGenericParameters(System.Object)">
            <summary>
            ArgumentException with message like "Method {0} contains generic parameters"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MethodIsGeneric(System.Object)">
            <summary>
            ArgumentException with message like "Method {0} is a generic method definition"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MethodNotPropertyAccessor(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "The method '{0}.{1}' is not a property accessor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyDoesNotHaveGetter(System.Object)">
            <summary>
            ArgumentException with message like "The property '{0}' has no 'get' accessor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyDoesNotHaveSetter(System.Object)">
            <summary>
            ArgumentException with message like "The property '{0}' has no 'set' accessor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyDoesNotHaveAccessor(System.Object)">
            <summary>
            ArgumentException with message like "The property '{0}' has no 'get' or 'set' accessors"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.NotAMemberOfType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "'{0}' is not a member of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.OperatorNotImplementedForType(System.Object,System.Object)">
            <summary>
            NotImplementedException with message like "The operator '{0}' is not implemented for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ParameterExpressionNotValidAsDelegate(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "ParameterExpression of type '{0}' cannot be used for delegate parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyNotDefinedForType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Property '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InstancePropertyNotDefinedForType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Instance property '{0}' is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InstancePropertyWithoutParameterNotDefinedForType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Instance property '{0}' that takes no argument is not defined for type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InstancePropertyWithSpecifiedParametersNotDefinedForType(System.Object,System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Instance property '{0}{1}' is not defined for type '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InstanceAndMethodTypeMismatch(System.Object,System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Method '{0}' declared on type '{1}' cannot be called with instance of type '{2}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeContainsGenericParameters(System.Object)">
            <summary>
            ArgumentException with message like "Type {0} contains generic parameters"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeIsGeneric(System.Object)">
            <summary>
            ArgumentException with message like "Type {0} is a generic type definition"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeMissingDefaultConstructor(System.Object)">
            <summary>
            ArgumentException with message like "Type '{0}' does not have a default constructor"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ListInitializerWithZeroMembers">
            <summary>
            ArgumentException with message like "List initializers must contain at least one initializer"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ElementInitializerMethodNotAdd">
            <summary>
            ArgumentException with message like "Element initializer method must be named 'Add'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ElementInitializerMethodNoRefOutParam(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Parameter '{0}' of element initializer method '{1}' must not be a pass by reference parameter"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ElementInitializerMethodWithZeroArgs">
            <summary>
            ArgumentException with message like "Element initializer method must have at least 1 parameter"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ElementInitializerMethodStatic">
            <summary>
            ArgumentException with message like "Element initializer method must be an instance method"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeNotIEnumerable(System.Object)">
            <summary>
            ArgumentException with message like "Type '{0}' is not IEnumerable"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TypeParameterIsNotDelegate(System.Object)">
            <summary>
            InvalidOperationException with message like "Type parameter is {0}. Expected a delegate."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnexpectedCoalesceOperator">
            <summary>
            InvalidOperationException with message like "Unexpected coalesce operator."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidCast(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot cast from type '{0}' to type '{1}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnhandledBinary(System.Object)">
            <summary>
            ArgumentException with message like "Unhandled binary: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnhandledBinding">
            <summary>
            ArgumentException with message like "Unhandled binding "
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnhandledBindingType(System.Object)">
            <summary>
            ArgumentException with message like "Unhandled Binding Type: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnhandledConvert(System.Object)">
            <summary>
            ArgumentException with message like "Unhandled convert: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnhandledExpressionType(System.Object)">
            <summary>
            ArgumentException with message like "Unhandled Expression Type: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnhandledUnary(System.Object)">
            <summary>
            ArgumentException with message like "Unhandled unary: {0}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnknownBindingType">
            <summary>
            ArgumentException with message like "Unknown binding type"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UserDefinedOpMustHaveConsistentTypes(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "The user-defined operator method '{1}' for operator '{0}' must have identical parameter and return types."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UserDefinedOpMustHaveValidReturnType(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "The user-defined operator method '{1}' for operator '{0}' must return the same type as its parameter or a derived type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.LogicalOperatorMustHaveBooleanOperators(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "The user-defined operator method '{1}' for operator '{0}' must have associated boolean True and False operators."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MethodDoesNotExistOnType(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "No method '{0}' exists on type '{1}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MethodWithArgsDoesNotExistOnType(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "No method '{0}' on type '{1}' is compatible with the supplied arguments."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.GenericMethodWithArgsDoesNotExistOnType(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "No generic method '{0}' on type '{1}' is compatible with the supplied type arguments and arguments. No type arguments should be provided if the method is non-generic. "
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MethodWithMoreThanOneMatch(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "More than one method '{0}' on type '{1}' is compatible with the supplied arguments."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PropertyWithMoreThanOneMatch(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "More than one property '{0}' on type '{1}' is compatible with the supplied arguments."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfTypeArgsForFunc">
            <summary>
            ArgumentException with message like "An incorrect number of type args were specified for the declaration of a Func type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IncorrectNumberOfTypeArgsForAction">
            <summary>
            ArgumentException with message like "An incorrect number of type args were specified for the declaration of an Action type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ArgumentCannotBeOfTypeVoid">
            <summary>
            ArgumentException with message like "Argument type cannot be System.Void."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.AmbiguousMatchInExpandoObject(System.Object)">
            <summary>
            System.Reflection.AmbiguousMatchException with message like "More than one key matching '{0}' was found in the ExpandoObject."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.SameKeyExistsInExpando(System.Object)">
            <summary>
            ArgumentException with message like "An element with the same key '{0}' already exists in the ExpandoObject."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.KeyDoesNotExistInExpando(System.Object)">
            <summary>
            System.Collections.Generic.KeyNotFoundException with message like "The specified key '{0}' does not exist in the ExpandoObject."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.NoOrInvalidRuleProduced">
            <summary>
            InvalidOperationException with message like "No or Invalid rule produced"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.FirstArgumentMustBeCallSite">
            <summary>
            ArgumentException with message like "First argument of delegate must be CallSite"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.BindingCannotBeNull">
            <summary>
            InvalidOperationException with message like "Bind cannot return null."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidOperation(System.Object)">
            <summary>
            ArgumentException with message like "Invalid operation: '{0}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.OutOfRange(System.Object,System.Object)">
            <summary>
            ArgumentOutOfRangeException with message like "{0} must be greater than or equal to {1}"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.QueueEmpty">
            <summary>
            InvalidOperationException with message like "Queue empty."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.LabelTargetAlreadyDefined(System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot redefine label '{0}' in an inner block."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.LabelTargetUndefined(System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot jump to undefined label '{0}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ControlCannotLeaveFinally">
            <summary>
            InvalidOperationException with message like "Control cannot leave a finally block."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ControlCannotLeaveFilterTest">
            <summary>
            InvalidOperationException with message like "Control cannot leave a filter test."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.AmbiguousJump(System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot jump to ambiguous label '{0}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ControlCannotEnterTry">
            <summary>
            InvalidOperationException with message like "Control cannot enter a try block."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ControlCannotEnterExpression">
            <summary>
            InvalidOperationException with message like "Control cannot enter an expression--only statements can be jumped into."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.NonLocalJumpWithValue(System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot jump to non-local label '{0}' with a value. Only jumps to labels defined in outer blocks can pass values."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.ExtensionNotReduced">
            <summary>
            InvalidOperationException with message like "Extension should have been reduced."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CannotCompileConstant(System.Object)">
            <summary>
            InvalidOperationException with message like "CompileToMethod cannot compile constant '{0}' because it is a non-trivial value, such as a live object. Instead, create an expression tree that can construct this value."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CannotCompileDynamic">
            <summary>
            NotSupportedException with message like "Dynamic expressions are not supported by CompileToMethod. Instead, create an expression tree that uses System.Runtime.CompilerServices.CallSite."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidLvalue(System.Object)">
            <summary>
            InvalidOperationException with message like "Invalid lvalue for assignment: {0}."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidMemberType(System.Object)">
            <summary>
            InvalidOperationException with message like "Invalid member type: {0}."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnknownLiftType(System.Object)">
            <summary>
            InvalidOperationException with message like "unknown lift type: '{0}'."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidOutputDir">
            <summary>
            ArgumentException with message like "Invalid output directory."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidAsmNameOrExtension">
            <summary>
            ArgumentException with message like "Invalid assembly name or file extension."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CollectionReadOnly">
            <summary>
            NotSupportedException with message like "Collection is read-only."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.IllegalNewGenericParams(System.Object)">
            <summary>
            ArgumentException with message like "Cannot create instance of {0} because it contains generic parameters"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UndefinedVariable(System.Object,System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "variable '{0}' of type '{1}' referenced from scope '{2}', but it is not defined"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CannotCloseOverByRef(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "Cannot close over byref parameter '{0}' referenced in lambda '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.UnexpectedVarArgsCall(System.Object)">
            <summary>
            InvalidOperationException with message like "Unexpected VarArgs call to method '{0}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.RethrowRequiresCatch">
            <summary>
            InvalidOperationException with message like "Rethrow statement is valid only inside a Catch block."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TryNotAllowedInFilter">
            <summary>
            InvalidOperationException with message like "Try expression is not allowed inside a filter body."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MustRewriteToSameNode(System.Object,System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "When called from '{0}', rewriting a node of type '{1}' must return a non-null value of the same type. Alternatively, override '{2}' and change it to not visit children of this type."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MustRewriteChildToSameType(System.Object,System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "Rewriting child expression from type '{0}' to type '{1}' is not allowed, because it would change the meaning of the operation. If this is intentional, override '{2}' and change it to allow this rewrite."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.MustRewriteWithoutMethod(System.Object,System.Object)">
            <summary>
            InvalidOperationException with message like "Rewritten expression calls operator method '{0}', but the original node had no operator method. If this is is intentional, override '{1}' and change it to allow this rewrite."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TryNotSupportedForMethodsWithRefArgs(System.Object)">
            <summary>
            NotSupportedException with message like "TryExpression is not supported as an argument to method '{0}' because it has an argument with by-ref type. Construct the tree so the TryExpression is not nested inside of this expression."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TryNotSupportedForValueTypeInstances(System.Object)">
            <summary>
            NotSupportedException with message like "TryExpression is not supported as a child expression when accessing a member on type '{0}' because it is a value type. Construct the tree so the TryExpression is not nested inside of this expression."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.CollectionModifiedWhileEnumerating">
            <summary>
            InvalidOperationException with message like "Collection was modified; enumeration operation may not execute."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.EnumerationIsDone">
            <summary>
            InvalidOperationException with message like "Enumeration has either not started or has already finished."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.HomogenousAppDomainRequired">
            <summary>
            InvalidOperationException with message like "Dynamic operations can only be performed in homogenous AppDomain."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.TestValueTypeDoesNotMatchComparisonMethodParameter(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Test value of type '{0}' cannot be used for the comparison method parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.SwitchValueTypeDoesNotMatchComparisonMethodParameter(System.Object,System.Object)">
            <summary>
            ArgumentException with message like "Switch value of type '{0}' cannot be used for the comparison method parameter of type '{1}'"
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.InvalidMetaObjectCreated(System.Object)">
            <summary>
            InvalidOperationException with message like "An IDynamicMetaObjectProvider {0} created an invalid DynamicMetaObject instance."
            </summary>
        </member>
        <member name="M:Microsoft.Scripting.Ast.Error.PdbGeneratorNeedsExpressionCompiler">
            <summary>
            NotSupportedException with message like "DebugInfoGenerator created by CreatePdbGenerator can only be used with LambdaExpression.CompileToMethod."
            </summary>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`6">
            <summary>
            Encapsulates a method that has five parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`7">
            <summary>
            Encapsulates a method that has six parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`8">
            <summary>
            Encapsulates a method that has seven parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`9">
            <summary>
            Encapsulates a method that has eight parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`10">
            <summary>
            Encapsulates a method that has nine parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`11">
            <summary>
            Encapsulates a method that has ten parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`12">
            <summary>
            Encapsulates a method that has eleven parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`13">
            <summary>
            Encapsulates a method that has twelve parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`14">
            <summary>
            Encapsulates a method that has thirteen parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`15">
            <summary>
            Encapsulates a method that has fourteen parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T14">The type of the fourteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg14">The fourteenth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`16">
            <summary>
            Encapsulates a method that has fifteen parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T14">The type of the fourteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T15">The type of the fifteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg14">The fourteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg15">The fifteenth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:Microsoft.Scripting.Utils.Func`17">
            <summary>
            Encapsulates a method that has sixteen parameters and returns a value of the type specified by the TResult parameter.
            </summary>
            <typeparam name="T1">The type of the first parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T2">The type of the second parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T3">The type of the third parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T4">The type of the fourth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T5">The type of the fifth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T6">The type of the sixth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T7">The type of the seventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T8">The type of the eighth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T9">The type of the ninth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T10">The type of the tenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T11">The type of the eleventh parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T12">The type of the twelfth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T13">The type of the thirteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T14">The type of the fourteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T15">The type of the fifteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="T16">The type of the sixteenth parameter of the method that this delegate encapsulates.</typeparam>
            <typeparam name="TResult">The type of the return value of the method that this delegate encapsulates.</typeparam>
            <param name="arg1">The first parameter of the method that this delegate encapsulates.</param>
            <param name="arg2">The second parameter of the method that this delegate encapsulates.</param>
            <param name="arg3">The third parameter of the method that this delegate encapsulates.</param>
            <param name="arg4">The fourth parameter of the method that this delegate encapsulates.</param>
            <param name="arg5">The fifth parameter of the method that this delegate encapsulates.</param>
            <param name="arg6">The sixth parameter of the method that this delegate encapsulates.</param>
            <param name="arg7">The seventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg8">The eighth parameter of the method that this delegate encapsulates.</param>
            <param name="arg9">The ninth parameter of the method that this delegate encapsulates.</param>
            <param name="arg10">The tenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg11">The eleventh parameter of the method that this delegate encapsulates.</param>
            <param name="arg12">The twelfth parameter of the method that this delegate encapsulates.</param>
            <param name="arg13">The thirteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg14">The fourteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg15">The fifteenth parameter of the method that this delegate encapsulates.</param>
            <param name="arg16">The sixteenth parameter of the method that this delegate encapsulates.</param>
            <returns>The return value of the method that this delegate encapsulates.</returns>
        </member>
        <member name="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1">
            <summary>
            The builder for read only collection.
            </summary>
            <typeparam name="T">The type of the collection element.</typeparam>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.#ctor">
            <summary>
            Constructs a ReadOnlyCollectionBuilder.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.#ctor(System.Int32)">
            <summary>
            Constructs a ReadOnlyCollectionBuilder with a given initial capacity.
            The contents are empty but builder will have reserved room for the given
            number of elements before any reallocations are required.
            </summary> 
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Constructs a ReadOnlyCollectionBuilder, copying contents of the given collection.
            </summary>
            <param name="collection"></param>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.IndexOf(`0)">
            <summary>
            Returns the index of the first occurrence of a given value in the builder.
            </summary>
            <param name="item">An item to search for.</param>
            <returns>The index of the first occurrence of an item.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Insert(System.Int32,`0)">
            <summary>
            Inserts an item to the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/> at the specified index.
            </summary>
            <param name="index">The zero-based index at which item should be inserted.</param>
            <param name="item">The object to insert into the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.RemoveAt(System.Int32)">
            <summary>
            Removes the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/> item at the specified index.
            </summary>
            <param name="index">The zero-based index of the item to remove.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Clear">
            <summary>
            Removes all items from the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/> contains a specific value
            </summary>
            <param name="item">the object to locate in the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.</param>
            <returns>true if item is found in the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>; otherwise, false.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/> to an <see cref="T:System.Array"/>,
            starting at particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.</param>
            <returns>true if item was successfully removed from the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>;
            otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.
            </returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Reverse">
            <summary>
            Reverses the order of the elements in the entire <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Reverse(System.Int32,System.Int32)">
            <summary>
            Reverses the order of the elements in the specified range.
            </summary>
            <param name="index">The zero-based starting index of the range to reverse.</param>
            <param name="count">The number of elements in the range to reverse.</param>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.ToArray">
            <summary>
            Copies the elements of the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/> to a new array.
            </summary>
            <returns>An array containing copies of the elements of the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.ToReadOnlyCollection">
            <summary>
            Creates a <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/> containing all of the the elements of the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/>,
            avoiding copying the elements to the new array if possible. Resets the <see cref="T:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1"/> after the
            <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/> has been created.
            </summary>
            <returns>A new instance of <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/>.</returns>
        </member>
        <member name="P:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Capacity">
            <summary>
            Gets and sets the capacity of this ReadOnlyCollectionBuilder
            </summary>
        </member>
        <member name="P:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Count">
            <summary>
            Returns number of elements in the ReadOnlyCollectionBuilder.
            </summary>
        </member>
        <member name="P:System.Runtime.CompilerServices.ReadOnlyCollectionBuilder`1.Item(System.Int32)">
            <summary>
             Gets or sets the element at the specified index.
            </summary>
            <param name="index">The zero-based index of the element to get or set.</param>
            <returns>The element at the specified index.</returns>
        </member>
        <member name="M:System.Runtime.CompilerServices.TrueReadOnlyCollection`1.#ctor(`0[])">
            <summary>
            Creates instnace of TrueReadOnlyCollection, wrapping passed in array.
            !!! DOES NOT COPY THE ARRAY !!!
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.TypeExtensions.CreateDelegate(System.Reflection.MethodInfo,System.Type,System.Object)">
            <summary>
            Creates a closed delegate for the given (dynamic)method.
            </summary>
        </member>
        <member name="M:System.Dynamic.Utils.TypeExtensions.MatchesArgumentTypes(System.Reflection.MethodInfo,System.Type[])">
            <summary>
            Returns true if the method's parameter types are reference assignable from
            the argument types, otherwise false.
            
            An example that can make the method return false is that 
            typeof(double).GetMethod("op_Equality", ..., new[] { typeof(double), typeof(int) })
            returns a method with two double parameters, which doesn't match the provided
            argument types.
            </summary>
            <returns></returns>
        </member>
    </members>
</doc>
